SQL学习笔记1

本文详细介绍了SQL学习中的关键步骤,包括创建数据库、数据表的创建与删除,以及约束的创建与删除。此外,还涵盖了使用SQLServer身份验证模式sa账户密码登录、取消只读数据库设置的方法,并提供了创建用户的具体步骤。最后,简要概述了T-SQL基本编程中的插入、删除、更新和查询语句。

SQL学习笔记1

创建数据库

/*-创建文件夹project-*/  exec xp_cmdshell 'mkdir D:\project' --D:\project为路径

/*-创建数据库-*/use master        go

--查找数据库:if exists(select * from sysdatabases where name = '数据库名')

 --删除数据库:drop database 数据库名     go

--创建数据库:create database 数据库名on primary --可选( name = '数据库名_data',   --逻辑名

 filename = 'D:\project\数据库名_data.mdf', --物理名

 size = 大小mb,    --大小

 maxsize = 大小mb,    --最大容量

 filegrowth = 1    --增长率_1mb增长,当等于0时表示不增长)

log on --可选( name = '数据库名_log',   --逻辑名

 filename = 'D:\project\数据库名_log.ldf', --物理名

 size = 大小mb,    --大小

 maxsize = 大小mb,    --最大容量

 filegrowth = 1%    --增长率_按总容量的1%增长)   go

 

创建数据表

use 数据库名

--查找数据表:if exists(select * from sysobjects where name = '表名')

 --删除数据表: drop table 表名    go

--创建数据表:create table 表名(

 --设为主键:列名数据类型 constraint PK_列名1 primary key identity(1,1) not null,

 --创建唯一约束:列名数据类型 constraint UQ_列名2 unique not null,

--创建主外键关系:列名数据类型 constraint KF_3 foreign key references 主键表名(主键列) not null,

 --设默认值,默认约束中的for省略:列名数据类型 constraint DF_列名4 default ('默认内容') not null,

 --设置检查约束条件:列名数据类型 constraint CK_列名5 check (检查约束条件) not null,

 --创建多个约束,在同一列创建多个约束时使由多个constraint来区分的

 列名数据类型 constraint DF_列名6 default ('默认内容') constraint CK_列名6 check (检查约束条件) not null    )   go

创建和删除约束

/*-创建约束-*/

 --主键约束(Primary Key Constraint):要求主键列数据唯一,并且不允许为空.

 alter table 表名   add constraint PK_列名 primary key (列名)

 --唯一约束(Unique Constraint):要求该列唯一,允许为空,但是只能出现一格空值.

 alter table 表名      add constraint UQ_列名 unique (列名)

 --检查约束(Check Constraint):某列取值范围限制、格式限制等.

 alter table 表名      add constraint CK_列名 check(约束条件)

 --默认约束(Default Constraint):某列的默认值.

 alter table 表名     add constraint DF_列名 default('默认内容') for 列名

 --外键约束(Foreign Key Constraint):用于两表之间建立关系,需要制定应用主表的哪一列.

 alter table 表名     add constraint FK_列名 foreign key(外键列名) references 主键表名(主键列名)

/*-删除约束-*/

 alter table 表名     drop constraint 约束名

关于使用SQL Server 身份验证模式sa账户密码登录和取消只读数据库的设置

SQL学习笔记

设置使用SQL Server 身份验证模式sa账户密码登陆
1
、使用Windows 身份验证模式登录——选中服务器——单击右键——属性——在服务器属性对话框的选择页中选择安全——在服务器身份验证的单选按钮中选择 SQL Server  Windows 身份验证模式——单击确定
2
、打开服务器——然后打开安全性——最后打开登录名——选中 sa ——单击右键——属性——在登录属性-sa对话框的选择页中选择常规——在登录名选项的密码和确认密码对话框中强制添加 sa 密码——然后再在登录属性-sa对话框的选择页中选择状态——在设置选项的是否允许连接到数据库引擎单选按钮选择授权——登录单选按钮选择启用——单击确定

设置取消只读数据库
打开SQL server 配置工具里的SQL Server Configuration Manager——SQL Server 配置管理器中选择SQL Server 2005 服务——在右边的对话框中选择——SQL Server (SQLEXPRESS)——单击右键——属性——SQL Server (SQLEXPRESS)属性对话框中——登录身份为单选按钮选择内置账户——在内置账户的下拉框中选择本地系统——然后在服务状态里单击重新启动——单击确定

设置取消 获得连接错误!com.microsoft.sqlserver.jdbc.SQLServerExeption: 到主机的 TPC/IP 连接失败。的方法
1
、打开SQL server 配置工具里的SQL Server Configuration Manager——SQL Server 配置管理器中选择SQL Server 2005 网络配置——SQLEXPRESS 的协议——单击或者单击右键打开——在右边的对话框中将所有协议的状态都启用——然后选择TCP/IP——单击右键——属性——TCP/IP属性对话框中选择IP地址选项卡——IP1的选项中的已启用选项选择是——再在IPALL选项中的TCP端口改为1433——单击确定
2
、在SQL Server 配置管理器中选择SQL Native Client 配置——客户端协议——单击或者单击右键打开——在右边的对话框中选择TCP/IP——单击右键——属性——将在TCP/IP属性对话框中协议的General选项中的默认端口改为1433并且将已启用的选项改为是——单击确定

创建用户

/*-第一步登录用户-*/

 --创建windows登录用户

 --当创建windows登陆用户是必须在用户或组中存在用户名,创建方法是

 右键打开"我的电脑"—管理本地用户和组用户(在此创建用户名)

 exec sp_grantlogin '电脑名\windows登录用户名'

 --创建SQL登录用户: exec sp_addlogin 'SQL登录用户名','密码'

/*-第二步数据库用户-*/

 --数据库用户windows登录:exec sp_grantdbaccess '电脑名\windows登录用户名','据库用户名'

 --数据库用户SQL登录: exec sp_grantdbaccess 'SQL登录用户名','据库用户名'

/*-第三步用户授权-*/

 --授权SQL登录用户增、删、改、查的权限:grant select,insert,delete,update on stuInfo to 据库用户名

 --授权windows登录用户创建表的权限: grant create table to 据库用户名

T-SQL 简单编程

/*-插入语句-*/

 --插入一条: insert into 表名 (列名) values (列名值)

 --插入多条

 --通过inert select 语句将现有表中的数据添加到新表

 insert into 新表名 (新表列名)

 select 现有表列名

 from 现有表名 

 

 --通过select into 语句将现有的表中的数据添加到新表

 select 现有表名.现有表列名,

 identity(数据类型,标识种子,标识增长量) as 新表名的ID列名

 into 新表名

 from 现有表名

 

 --通过union关键字合并数据进行插入

 insert into 表名 (列名)

 select 列名值 union

 select 列名值

 

/*-删除-*/

 --delete删除数据

 --delete...from...要删除就删除整条记录,不会只删除单个字段.

 delete from 表名 where 条件

 

 --truncate table删除数据

 --truncate table用来删除表中所有行的命令,功能上和没有where

 件的delete类似;

 truncate table用来删除表中有行,但是表的结构、列、约束、索引等不会被改动.

 truncate table不能用于有外键约束引用的表,所以需要使用delete语句.

 truncate table 表名

 

/*-更新-*/update 表名 set 列名=更新值 where 条件

/*-查询-*/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值