SQLSERVER数据库、表的创建及SQL语句命令SQLSERVER数据库,安装、备份、还原等问题:一、存在已安装了sql server 2000,或2005等数据库,再次安装2008,会出现的问题1、卸载原来的sql server 2000、2005,然后再安装sql server 2008,否则经常sql server服务启动不了2、sql server服务启动失败,解决方法:进入sql server configure manager,点开Sql server 网络配置(非sql native client 配置),点sqlzhh(我sqlserver 的名字)协议,将VIA协议禁用。
再启动Sql Server服务,成功如图:二、在第一次安装SQLSERVER2008结束后,查看安装过程明细,描述中有较多项插件或程度,显示安装失败。
解决方法:1、重新启动安装程度setup.exe,选择进行修复安装,至完成即可。
三、先创建数据库XXX,再进行还原数据库时,选择好备份文件XXX.bak,确定后进行还原,会报如下图的错误。
解决方法:选择好备份数据库文件后,再进入“选项”中,勾选“覆盖现在数据库”即可。
四、查看数据库版本的命令:select @@version在数据库中,点击“新建查询”,然后输入命令,执行结果如下五、数据库定义及操作命令:按照数据结构来组织、存储和管理数据的仓库。
由表、关系以及操作对象组成,把数据存放在数据表中。
1、修改数据库密码的命令:EXEC sp_password NULL, '你的新密码', 'sa'sp_password Null,'sa','sa'2、操作SQL2008数据库的命令备份SQL数据库:backup database[3D-DATA]/*原数据库*/to disk='D:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\backup\3D-DATA_backup_20131017.bak/*数据库备份文件*/' with name='3D-DATA_backup_20131017'/*数据库备份文件*/查看备份数据库的逻辑文件:restore filelistonlyfrom disk='d:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\backup\3D-DATA_backup_20131017.bak '强制还原SQL数据库:[其中,Test-3d是已存在的数据库,3D-FEP_data和3D-FEP_log为备份数据库的两个逻辑文件,]restore database[Test-3d]from disk='d:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\Backup\3D-DATA_backup_20131017.bak'withmove'3D-FEP_data'to'D:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-3d.mdf',move'3D-FEP_log'to'D:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-3d_log.ldf',stats= 10/* 表示每完成10%显示一条记录*/,replace/*表示强制,放置在with后,加英文逗号也可*/以下为另一种方式:-备份数据DB 到.bak文件。
然后利用此bak文件恢复一个新的数据库DBTest。
USE master;backup database DBto disk = 'g:\DBBack0930.bak' ;restore filelistonlyform disk = 'g:\DBBack0930.bak' ;restore database DBTest(此数据库,已创建)FROM DISK = 'g:\DBBack0930.bak'WITH MOVE 'DBTest' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DBTest.mdf', MOVE 'DBTest_log' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DBTest_log.ldf' GO六、SQL Server数据库文件恢复技术yzhshi(yzhshi@) SQL Server数据库备份有两种方式:1、使用命令:BACKUP DATABASE,将数据库文件备份出去;2、直接拷贝数据库文件mdf和日志文件ldf的方式。
下面将主要讨论一下后者的备份与恢复。
本文假定您能熟练使用SQL Server Enterprise Manager (SQL Server企业管理器)和SQL Server Quwey Analyser(SQL Server查询分析器)正常的备份、恢复方式正常方式下,我们要备份一个数据库,首先要先将该数据库从运行的数据服务器中断开,或者停掉整个数据库服务器,然后复制文件。
卸下数据库的命令:Sp_detach_db数据库名连接数据库的命令:Sp_attach_db或者sp_attach_single_file_db s_attach_db [@dbname =] ′dbname′, [@filename1 =] ′filename_n′[,...16] sp_attach_single_file_db [@dbname =] ′dbname′, [@physname =] ′physical_name′使用此方法可以正确恢复SQL Sever7.0和SQL Server 2000的数据库文件,要点是备份的时候一定要将mdf和ldf两个文件都备份下来,mdf文件是数据库数据文件,ldf是数据库日志文件。
七、SQL命令创建数据库及数据表use masterif db_id('Test-a01')is not null--判断数据库,是否已存在drop database[Test-a01]--删除数据库gocreate database[Test-a01]on primary(name='Test-a01_data', --数据文件的逻辑名称filename='D:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-a01_data.ndf', --数据文件的路径和文件名size= 3mb,--数据文件的初始容量maxsize= 10mB--数据文件的最大容量)log on(name='Test-a01_log', --事务日志文件的逻辑名称filename='D:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-a01_log.ndf', --事务日志文件的路径和文件名size= 3mb, --事务日志文件的初始容量maxsize= 10mB--事务日志文件的最大容量)Gouse[xxxxx]/*指定创建表的数据库*/gocreate table student(stuID char(5)primary key,--主键stuname char(20)not null,stusex char(2)check(stusex in('男','女'))default('女'),--设定范围及默认值stuage char(6),stubirth date check(stubirth between'1985-01-01'and'1995-12-31'),--设置日期范围stuaddress varchar(100),stunum char(12),stuemail char(40)check(stuemail like'%@%'))gouse[xxxxx]gocreate table teacher(TeacherID char(5),Teaname char(20)not null,Teasex char(2)check(Teasex in('男','女'))default('女'),Teaage char(6),Entrydate date check(Entrydate between'1950-01-01'and'2099-12-31'), Teaphone varchar(100),Teanum char(12),Teaaddress char(40))---------1、删除新表:drop table table_name;2、创建视图:create view viewname as select statement;例1:create view view_name01(stuid,stuname,stusex,stuage)asselect stuid,stuname,stusex,stuage from student where stuage>=25;其中,红色部分的字段列,必须相同。
如下例2,则不用考虑(比较常用).create view view_name02asselect stuid,stuname,stusex,stuage from student where stuage>=25;查看视图:select * from view_name;3、删除视图:drop view viewname;4、创建索引:create [unique] index idx_name on table_name(字段1…);create index idx_name on table_name (COLUMN_NAME);5、删除索引:drop index idxname;八、常见创建数据表的限制,有以下几种:NOT NULLUNIQUECHECK主键(Primary Key)外来键(Foreign Key)1、NOT NULL表示某字段的值,不允许出现空值。