创建数据库的SQL语句:
create database stuDB
on primary -- 默认就属于primary文件组,可省略
(
/--数据文件的具体描述--/
name='stuDB_data', -- 主数据文件的逻辑名称
filename='D:\stuDB_datamdf', -- 主数据文件的物理名称
size=5mb, --主数据文件的初始大小
maxsize=100mb, -- 主数据文件增长的最大值
filegrowth=15%--主数据文件的增长率
)
log on
(
/--日志文件的具体描述,各参数含义同上--/
name='stuDB_log',
filename='D:\stuDB_logldf',
size=2mb,
filegrowth=1mb
)
创建表和删除表的SQL语句如下:
use StuDB
go
if exists(select from sysobjects where name='stuMarks')
drop table stuMarks
create table stuMarks
(
ExamNo int identity(1,1) primary key,
stuNo char(6) not null,
writtenExam int not null,
LabExam int not null
)
go
-- 其中,列属性"identity(起始值,递增量)" 表示"ExamNo"列为自动编号, 也称为标识列
alter table 表名
add constraint 约束名 约束类型 具体的约束说明
alter table 表名
drop constraint 约束名
alter table stuMarks
add constraint UQ_stuNo Unique(stuNo)
alter table stuMarks
drop constraint UQ_stuNo
/--添加SQL登录账户--/
exec sp_addlogin 'xie', '123456' -- 账户名为xie,密码为123456
--删除xie账户名
exec sp_droplogin 'xie'
/--在stuDB数据库中添加两个用户(必须存在)--/
use stuDB
go
exec sp_grantdbaccess 'xie','123456'
go
-- 提示:SQL Server 中的dbo用户是具有在数据库中执行所有活动权限的用户,表示数据库的所有者(owner),一般来说,
-- 如果创建了某个数据库,就是该数据库的所有者,即dbo用户,dbo用户是一个比较特殊的数据库用户,无法删除,且此用
-- 户始终出现在每个数据库中
/ --给数据库用户授权-- /
-- 授权的语法如下
-- grant 权限 [on 表名] to 数据库用户
use stuDB
go
grant select,update,insert on stuMarks to xie
grant create table to xie
go
1、打开代码窗口,添加引用:Imports SystemDataSqlClient。
2、输入以下代码:
“Public conn1 As SqlConnection = New SqlConnection _
("server=192168179; Initial Catalog= student; User ID= panqe;PWD=shentai768@")”,vb就已经成功连接sql数据库了。
3、代码详解:声明关键字Public(因为是全局变量,所以用Public 来声明)。
4、连接参数。
5、如果SQL 数据库就在本机,则用以下代码连接:
("server=; Integrated Security=False;Initial Catalog= student; User ID= panqe;PWD=shentai768@")。
6:如果代码太长,影响可读性,可以用空格加"_"后,回车换行。
数据库是以某种文件结构存储的一系列信息表,这种文件结构使您能够访问这些表、选择表中的列、对表进行排序以及根据各种标准选择行。数据库通常有多个索引与这些表中的许多列相关联,所以我们能尽可能快地访问这些表。
以员工记录为例,您可以设想一个含有员工姓名、地址、工资、扣税以及津贴等内容的表。让我们考虑一下这些内容可能如何组织在一起。您可以设想一个表包含员工姓名、地址和电话号码。您希望保存的其它信息可能包括工资、工资范围、上次加薪时间、下次加薪时间、员工业绩评定等内容。
这些内容是否应保存在一个表格中?几乎可以肯定不应该如此。不同类别的员工的工资范围可能没有区别;这样,您可以仅将员工类型储存在员工记录表中,而将工资范围储存在另一个表中,通过类型编号与这个表关联。考虑以下情况:
KeyLastnameSalaryTypeSalaryTypeMinMax
1Adams213000045000
2Johnson124500060000
3Smyth336000075000
4Tully1
5Wolff2
SalaryType列中的数据引用第二个表。我们可以想象出许多种这样的表,如用于存储居住城市和每个城市的税值、健康计划扣除金额等的表。每个表都有一个主键列(如上面两个表中最左边的列)和若干数据列。在数据库中建立表格既是一门艺术,也是一门科学。这些表的结构由它们的范式指出。我们通常说表属于1NF、2NF或3NF。
第一范式:表中的每个表元应该只有一个值(永远不可能是一个数组)。(1NF)
第二范式:满足1NF,并且每一个非主键列完全依赖于主键列。这表示主键和该行中的剩余表元之间是1对1的关系。(2NF)
第三范式:满足2NF,并且所有非主键列是互相独立的。任何一个数据列中包含的值都不能从其他列的数据计算得到。(3NF)
现在,几乎所有的数据库都是基于“第三范式(3NF)”创建的。这意味着通常都有相当多的表,每个表中的信息列都相对较少。
从数据库中获取数据
假设我们希望生成一个包含员工及其工资范围的表,在我们设计的一个练习中将使用这个表。这个表格不是直接存在在数据库中,但可以通过向数据库发出一个查询来构建它。我们希望得到如下所示的一个表:
NameMinMax
Tully$30,00000$45,00000
Johnson$30,00000$45,00000
Wolff$45,00000$60,00000
Adams$45,00000$60,00000
Smyth$60,00000$75,00000
我们发现,获得这些表的查询形式如下所示
SELECTDISTINCTROWEmployeesName,Min,MaxFROMEmployeesINNERJOINONEmployeesSalaryKey=SalaryKey
ORDERBYMin;
这种语言称为结构化查询语言,即SQL,而且它是几乎目前所有数据库都可以使用的一种语言。SQL-92标准被认为是一种基础标准,而且已更新多次。
数据库的种类
PC上的数据库,如dBase、BorlandParadox、MicrosoftAess和FoxBase。
数据库服务器:IBMDB/2、MicrosoftSQLServer、Oracle、Sybase、SQLBase和XDB。
set conn=servercreateobject("ADODBCONNECTION")' 建立连接对象
'connstr="Provider=MicrosoftJetOLEDB40;Data Source=" & servermappath(""&MDBpath&"data/"&MDBname&"asp")
'设置连接字符串,provider设置驱动程序MicrosoftJetOLEDB40用于连接access,Data Source 是数据库路径
'如果你的服务器采用较老版本Access驱动,请用下面连接方法
connstr="Provider=SQLOLEDB;Data Source=218309621;Initial Catalog=cw84130_db;User Id=cw84130;Password=j0y9l0a7"
'设置连接字符串,provider设置驱动程序SQLOLEDB用于连接Sql Server,Data Source=218309621是服务器IP,
Catalog=cw84130_db数据库名称是cw84130_db,
User Id=cw84130 用户名是cw84130,
Password=j0y9l0a7用户密码
'connstr="Provider=SQLOLEDB;Data Source=5822136166,28180;Initial Catalog=pzjb;User Id=pzjbdat;Password=dpj^&44fdsafjokj&^&}{_()&&544564fdv"
'设置连接字符串,写法不同功能同上面连接sql数据库
Provider=SQLOLEDB;指定驱动为sql
Data Source=5822136166,28180;数据库服务器ip
Initial Catalog=pzjb;数据库名称
User Id=pzjbdat;数据库用户名
Password=dpj^&44fdsafjokj&^&}{_()&&544564fdv 数据库密码
'connstr="Driver={SQL Server};Server=218309621;uid=cw84130;pwd=j0y9l0a7;database=cw84130_db;autotranslate=yes;"
'连接sql server数据库的另外一种写法,同样是设置连接字符串
Driver={SQLServer};驱动是sql server,即是连接sql数据库
Server=218309621;数据库服务器ip
uid=cw84130;连接数据库的用户名
pwd=j0y9l0a7;连接数据库的密码
database=cw84130_db;数据库名称
autotranslate=yes 由于字符集的原因,防止数据在查询结果中显示为乱码,可以不输入
'connOpen connstr 打开连接,连接字符串是connstr
'connstr="Provider=SQLOLEDB;Data Source=(local);Initial Catalog=cheat;User Id=sa;Password=wen"
'连接sql server数据库的另外一种写法,同样是设置连接字符串
Provider=SQLOLEDB;指定驱动为sql
Data Source=(local);服务器是本机器,本机器可以设置为=(local);或者即点
Initial Catalog=cheat;设置数据库名称
User Id=sa;数据库用户名
Password=wen" 数据库密码
connopen connstr 打开连接,连接字符串是connstr
1bak是备份文件不是sql数据文件,sql的数据文件是mdf,日志文件是ldf
2你要连接到sql server只需要按照需要修改以下连接字符串(ip、数据库名称、用户名、密码)即可
'connstr="Driver={SQL Server};Server=218309621;uid=username;pwd=password;database=databasename;"
gorm构建在标准库database/sql上,所以需要先对database/sql有所了解。
以下内容大部分取自go语言标准库 >
对于用存储过程来分离数据库,如果发现无法终止用户链接,可以使用ALTER DATABASE命令,并利用一个能够中断已存在链接的终止选项来把数据库设置为SINGLE_USER模式,设置为SIGLE_USER代码如下:
ALTER DATABASE [DatabaseName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
下面是分离数据库的CMD命令
EXEC sp_detach_db DatabaseName
一旦一个数据库分离成功,从SQL Server角度来看和删除这个数据库没有什么区别。
以上就是关于sql创建数据库语句全部的内容,包括:sql创建数据库语句、请问VB编程中,如何连接SQL数据库、什么是数据库电脑上用的是什么数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)