ML岗位面试:10.11下午—上海某公司算法岗位(偏数据分析,证券金融行业)技术面试考点之sqlserver语言相关考察点复习

ML岗位面试:10.11下午—上海某公司算法岗位(偏数据分析,证券金融行业)技术面试考点之sqlserver语言相关考察点复习

 

导读:其实,考察的知识点,博主都做过,但是,emmm,这些知识点,在我写代码中,几乎不会用到,so,会遗忘。所以,还需要下功夫,去多回忆回忆啦。
         整个过程还算nice。

 

目录

T-SQL语句

sql数据库基本操作

1、创建表

2、增删改查

3、sql的约束

sqlserver其他相关操作

1、基本操作

2、备份还原数据库

3、删除数据库

4、已有E_Market文件中,添加文件组和数据文件


 

 

T-SQL语句

数据定义语句DDL、数据操作语句DML、数据控制语句DCL、其他基本语句、流程控制语句、批处理语句;

  • 数据定义语句DDL:CREAT、DROP、ALTER;
  • 数据操作语句DML:INSERT插入、UPDATE更改、DELETE删除、SELECT查询;
  • 数据控制语句DCL:GRANT给用户授予权限、DENY拒绝权限操作、REVOKE收回权限操作;

 

sql数据库基本操作

1、创建表

USE  niu                                        --使用niu数据库创建表niutable
IF EXISTS(select count(*) from sys.objects where name = '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 ='男' or sex='女'),  --性别,
s_dept  VARCHAR(50) NOT NULL,
s_phone  VARCHAR(18)  CONSTRAINT uq_phone UNIQUE   --电话
s_gongzi  NUMERIC(6,2) NOT NULL,                      --工资
shijian    DATETIME                                  --添加当前时间列
)

2、增删改查

ML岗位面试:10.11下午—上海某公司算法岗位(偏数据分析,证券金融行业)技术面试考点之sqlserver语言相关考察点复习_第1张图片ML岗位面试:10.11下午—上海某公司算法岗位(偏数据分析,证券金融行业)技术面试考点之sqlserver语言相关考察点复习_第2张图片ML岗位面试:10.11下午—上海某公司算法岗位(偏数据分析,证券金融行业)技术面试考点之sqlserver语言相关考察点复习_第3张图片ML岗位面试:10.11下午—上海某公司算法岗位(偏数据分析,证券金融行业)技术面试考点之sqlserver语言相关考察点复习_第4张图片

 

 

3、sql的约束

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
)

 

 

 

 

sqlserver其他相关操作

1、基本操作

USE master                                    
GO                                             

IF EXISTS(SELECT * FROM sys.databases WHERE NAME = 'CAD_student')
	DROP DATABASE CAD_student
GO
CREATE DATABASE E_Market                     
--建立主文件,物理文件后缀名为mdf
ON PRIMARY                                    --主文件组
(
    NAME='E_Market_data',                      --数据库逻辑文件名
    FILENAME='F:\File_SQL Server\E_Market_data.mdf',--主文件物理地址
    SIZE=5MB,                               --主文件初始大小
    MAXSIZE=100MB,                     --主文件增长的最大值,或无限制=UNLIMITED
    FILEGROWTH=15%                     --主文件的增长率
),                                          --第一个文件组结束
FILEGROUP FG                             --次文件组
(
    NAME='FG_E_Market_data',        --
    FILENAME='F:\File_SQL Server\FG_E_Market_data.ndf',
    SIZE=10MB,
    MAXSIZE=100MB,
    FILEGROWTH=0
)
LOG ON                                        --日志文件,日志文件不属任何文件组
(
    NAME='E_Market_log',                        --日志文件逻辑文件名
    FILENAME='F:\File_SQL Server\E_Market_log.ldf', --日志物理文件名
    SIZE=5MB,                                  --日志文件初始大小
    FILEGROWTH=0                             --未启用自动增长
)
GO                                              --批处理标志

 

2、备份还原数据库

backup  database  niu   to   disk ='F:\niu.bak'with name='F:\niu' 
--还原数据库
restore  database  niu   from  disk='F:\niu.bak'
--完整备份(name还原显示的名称
backup database t to disk='D:\CAD_student.bak',name='CAD_student'
--差异备份
backup database t to disk='E:\dataBak\log\bak_t_differ.bak'
with differential,noinit,name='bak_t_differ'
--日志备份
BACKUP LOG niu to disk='F:\niu_log_t.bak' with noinit,name='F:\niu_log_t'

 

3、删除数据库

USE master
DROP DATABASE E_Market
GO
IF EXISTS(SELECT * FROM sysdatabases WHERE name='E_Market')
DROP DATABASE E_Market
GO

 

4、已有E_Market文件中,添加文件组和数据文件

USE E_Market
ALTER DATABASE E_Market ADD FILEGROUP FG1
GO
ALTER DATABASE E_Market ADD FILE
(
    NAME='FG1_E_Market_data',
    FILENAME='F:\File_SQL Server\FG1_E_Market_data.ndf',
    SIZE=5MB,
    FILEGROWTH=10%,
    MAXSIZE=500MB
)TO FILEGROUP FG1
GO
ALTER DATABASE E_Market
MODIFY FILEGROUP FG1 DEFAULT
GO 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(DataScience)