Interview:算法岗位面试—10.11下午—上海某公司算法岗位(偏数据分析,证券金融行业)技术面试考点之sqlserver语言相关考察点复习
导读:其实,考察的知识点,博主都做过, 还包括sqlserver语言相关考察点,但是,emmm,这些知识点,在我写代码中,几乎不会用到,so,会遗忘。所以,还需要下功夫,去多回忆回忆啦。
整个过程还算nice。
目录
数据定义语句DDL、数据操作语句DML、数据控制语句DCL、其他基本语句、流程控制语句、批处理语句;
- USE niu --使用niu数据库创建表niutable
- IF EXISTS(select count(-operator">*) from sys.objects where name -operator">= 'niutable') --若原先存在该表,
- DROP TABLE niutable --执行删除该表;
- GO
- CREATE TABLE niutable --建表的同时要建字段;
- (
- s_id INT NOT NULL PRIMARY KEY, --数据表主键,id或num编号不能空
- s_age INT, --年龄,
- s_birthday DATE, --生日,不能为空
- s_name VARCHAR(20) NOT NULL, --名称,不能为空
- s_sex VARCHAR(4) NOT NULL CHECK(sex -operator">='男' or sex-operator">='女'), --性别,
- s_dept VARCHAR(50) NOT NULL,
- s_phone VARCHAR(18) CONSTRAINT uq_phone UNIQUE --电话
- s_gongzi NUMERIC(6,2) NOT NULL, --工资
- shijian DATETIME --添加当前时间列
- )
1、非空约束NOT NULL、DEFAULT约束:
--DEFAULT约束,定义表,指定员工编码默认是
CREATE TABLE tb_dept8 (
id INT PRIMARY KEY, --主键约束
name VARCHAR(26) NOT NULL, --NOT NULL约束
deptId INT DEFAULT 1111, --DEFAULT约束
salary FLOAT
);
2、唯一性约束
--唯一性约束,T1,指定一个表的名称为唯一的,
CREATE TABLE tb_dept2 (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(22) NOT NULL UNIQUE,
location VARCHAR(50)
)
--唯一性约束,T2,先定义一个表所有列以后,再指定部门唯一性;
CREATE TABLE tb_dept3 (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(22) NOT NULL,
location VARCHAR(50)
CONSTRAINT 部门名称 UNIQUE(name)
);
3、CHECK约束
--CHECK约束,定义一个表,约束员工工资属于(1800,3000);
CREATE TABLE tb_dept7 (
id INT PRIMARY KEY,
name VARCHAR(26),
deptId INT ,
salary FLOAT,
CHECk(salary > 1800 AND salary < 3000) --给定条件约束;
);
4、主键约束
CREATE TABLE nyy_pmp2 ( --T1法,在表nyy_pmp2下创建主键约束
id INT PRIMARY KEY,
name VARCHAR(25) NOT NULL,
salary FLOAT NOT NULL
)
CREATE TABLE nyy_pmp3 ( --T2法,在表nyy_pmp3下创建主键约束
id INT NOT NULL,
deptId CHAR(20) NOT NULL,
CONSTRAINT 姓名部门约束 --设置主键约束
PRIMARY KEY(name,deptId)
)
CREATE TABLE nyy_pmp4 ( --T3法,先创建表nyy_pmp4,再创建主键约束;
id INT NOT NULL,
name VARCHAR(25) NOT NULL,
deptId CHAR(20) NOT NULL,
salary FLOAT NOT NULL
)
- USE master
- GO
-
- IF EXISTS(SELECT -operator">* FROM sys.databases WHERE NAME -operator">= 'CAD_student')
- DROP DATABASE CAD_student
- GO
- CREATE DATABASE E_Market
- --建立主文件,物理文件后缀名为mdf
- ON PRIMARY --主文件组
- (
- NAME-operator">='E_Market_data', --数据库逻辑文件名
- FILENAME-operator">='F:\File_SQL Server\E_Market_data.mdf',--主文件物理地址
- SIZE-operator">=5MB, --主文件初始大小
- MAXSIZE-operator">=100MB, --主文件增长的最大值,或无限制=UNLIMITED
- FILEGROWTH-operator">=15-operator">% --主文件的增长率
- ), --第一个文件组结束
- FILEGROUP FG --次文件组
- (
- NAME-operator">='FG_E_Market_data', --
- FILENAME-operator">='F:\File_SQL Server\FG_E_Market_data.ndf',
- SIZE-operator">=10MB,
- MAXSIZE-operator">=100MB,
- FILEGROWTH-operator">=0
- )
- LOG ON --日志文件,日志文件不属任何文件组
- (
- NAME-operator">='E_Market_log', --日志文件逻辑文件名
- FILENAME-operator">='F:\File_SQL Server\E_Market_log.ldf', --日志物理文件名
- SIZE-operator">=5MB, --日志文件初始大小
- FILEGROWTH-operator">=0 --未启用自动增长
- )
- GO --批处理标志
- backup database niu to disk -operator">='F:\niu.bak'with name-operator">='F:\niu'
- --还原数据库
- restore database niu from disk-operator">='F:\niu.bak'
- --完整备份(name还原显示的名称
- backup database t to disk-operator">='D:\CAD_student.bak',name-operator">='CAD_student'
- --差异备份
- backup database t to disk-operator">='E:\dataBak\log\bak_t_differ.bak'
- with differential,noinit,name-operator">='bak_t_differ'
- --日志备份
- BACKUP LOG niu to disk-operator">='F:\niu_log_t.bak' with noinit,name-operator">='F:\niu_log_t'
- USE master
- DROP DATABASE E_Market
- GO
- IF EXISTS(SELECT -operator">* FROM sysdatabases WHERE name-operator">='E_Market')
- DROP DATABASE E_Market
- GO
- USE E_Market
- ALTER DATABASE E_Market ADD FILEGROUP FG1
- GO
- ALTER DATABASE E_Market ADD FILE
- (
- NAME-operator">='FG1_E_Market_data',
- FILENAME-operator">='F:\File_SQL Server\FG1_E_Market_data.ndf',
- SIZE-operator">=5MB,
- FILEGROWTH-operator">=10-operator">%,
- MAXSIZE-operator">=500MB
- )TO FILEGROUP FG1
- GO
- ALTER DATABASE E_Market
- MODIFY FILEGROUP FG1 DEFAULT
- GO
网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。
加入交流群
请使用微信扫一扫!