SQL Server 语句
数据库:
1、 创建数据库的语法:
if exists (select * from sysdatabases where name='DT_name') /*判断是否存在,是则删除*/
drop database DT_name
create database database_name
on primary /* 指定主要文件组,其中第一个主要文件 */
(
name = data1, /* 主数据文件的逻辑名 */
filename =‘地址\data1.mdf’; /* 主数据文件的物理 地址、名称 */
size = 10MB, /* 初始大小*/
maxsize = 100MB, /* 最大大小 */
filegrowth = 10% /* 增长率 */
),
filegroup group_NAME /* 非主要文件组 */
(
name = data2,
filename =‘地址\data2.ndf’;
size = 10MB,
maxsize = 100MB,
filegrowth = 10%
)...
log on /*指定事务日志文件*/
(
name = data3, /* 日志文件的逻辑名 */
filename =‘地址\data3.ldf’; /* 日志文件的物理 地址、名称 */
size = 5MB,
maxsize = 100MB,
filegrowth = 5%
)...
2、 修改语句:
alter database database_name +
1) 添加文件:add [log|] file (...)
2) 修改文件:modify file(name =‘文件名’,修改内容)
3) 删除文件:remove [log|] file “file_name”
4) 文件组:
j 添加:add filegroup 文件组名称 go alter database 数据库 add file (...)
k 删除:remove filegroup 文件组名称 ( 注意:除非文件组不包含任何数据文件,
否则无法删除 )
表:
1、 创建表:
create table table_name
(
列名#1 数据类型,
...
列名#n 数据类型,
)
1) 主键约束:primary key
2) 外键约束:foreign key
j [Constraint constraint_name]
Foreign key(外键列名) references 主表名(主键列)
k 表已经存在的情况在:
ALTER TABLE table_name
ADD FOREIGN KEY (外键列名)
REFERENCES table_primary(主键列)
相关文档:
如何让你的SQL运行得更快
---- 人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、 ......
先站在应用程序的角度说说它们的不同。
1、 直接拼 SQL
就像大家了解的那样,直接拼 SQL 带来了 SQL 注入攻击,带来了拼时些许的性能损失,但是拼不用添加 SqlParameter ,会少写很多代码——很多人喜欢直接拼,也许就因为这点。这种做法会把你拼好的 SQL 原样直接发送到 DB 服务器去执行。(注意类似 &rdquo ......
大型系统的生产环境,一般情况下,我们评价一条查询是否有效率,更多的是关注逻辑 IO( 至于为什么,回头补一篇 ) 。我们常说,“要建彪悍的索引”、“要写高效的 SQL ”,其实最终目的就是在相同结果集情况下,尽可能减少逻辑 IO 。
1.1 where 条件的列上都得有统计信 ......
1, 什么是统计信息
以下是官方的对统计信息的描述:
按照默认设置,如果表中的某列没有索引,则SQL Server会自动为该列创建统计。然后,查询优化器评估该列中数据分布范围的统计信息,以选择一个更为有效的查询处理方案。分辨自动创建的统计很简单,在SQL Serve ......