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往往来自于不恰当的索引设计、 ......
我们先看 NestedLoop 和 MergeJoin 的算法(以下为引用,见 RicCC 的《 通往性能优化的天堂 - 地狱 JOIN 方法说明 》 ):
==================================
NestedLoop:
foreach rowA in tableA where tableA.col2=?
{
search rowsB from tableB where tableB.c ......
SQL 查看所有表名:
select name from sysobjects where type='U'
查询表的所有字段名:
Select name from syscolumns Where ID=OBJECT_ID('表名')
select * from information_schema.tables
select * from information_schema.views
select * from information_schema.columns
ACCESS
查看所有表名:
se ......
在SQL Server 2008下,网上以前流行的截断日志并收缩文件的方法不适合了,报语法错误。
同时因为我的数据库日志增长非常快,大概每天在1G以上,因此必须对其进行收缩。
经过在系统上的测试,感觉用SQL SERVER的维护计划更可行,现将操作方式简介如下:
注:下面的说明中也提到了使用差异备份,因为数据库文件增长也非 ......