如何通过*.sql脚本建立数据库

sgDanny 2004-11-03 08:21:43
我在查询分析器中先文件--》连接
文件--》打开
然后点击绿点

结果 是 “所影响的行数为1”, 那个*.sql文件是一本书上带的,不应会有错吧?
...全文
205 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
sgDanny 2004-11-03
  • 打赏
  • 举报
回复
谢谢你,按照你说的,数据库建好了!!!
分给你

但我不知你是否懂ASP.Net,我运行Asp.net的程序,结果提示,我不知什么原因。

////////////////////////////////////////////////////////////////////////
“/Sutra”应用程序中的服务器错误。
--------------------------------------------------------------------------------

用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。

源错误:


行 36: {
行 37: cn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
行 38: cn.Open();
行 39: }
行 40:


源文件: C:\Inetpub\wwwroot\Sutra\Components\Config.cs 行: 38

堆栈跟踪:


[SqlException: 用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。]
System.Data.SqlClient.ConnectionPool.GetConnection(Boolean& isInTransaction)
System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction)
System.Data.SqlClient.SqlConnection.Open()
Sutra.Config.Open() in C:\Inetpub\wwwroot\Sutra\Components\Config.cs:38
Sutra.Config.GetRsCount(String table_name) in C:\Inetpub\wwwroot\Sutra\Components\Config.cs:376
Sutra.Default.btn_Sure_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\sutra\default.aspx.cs:95
System.Web.UI.WebControls.Button.OnClick(EventArgs e)
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
System.Web.UI.Page.ProcessRequestMain()




--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.573; ASP.NET 版本:1.1.4322.573


/////////////////////////////////////////////////////////////////////////
zjcxc 元老 2004-11-03
  • 打赏
  • 举报
回复
--脚本没有问题,不过你最好自己建一个新库,在新库中执行脚本,这样不至于把表建在别的数据库中(不方便管理)

--即在打开.sql文件后,在脚本最前面加上下面的语句(根据需要修改数据库名)
create database 数据库名
go

use 数据库名
go
sgDanny 2004-11-03
  • 打赏
  • 举报
回复
不好意思,没注意这么长
chinaandys 2004-11-03
  • 打赏
  • 举报
回复
邹老师,一语道破天机啊
sgDanny 2004-11-03
  • 打赏
  • 举报
回复





CREATE procedure s_Page_Rise
(
@pagesize int,
@pageindex int,
@Filed varchar(200),
@table varchar(200)
)
as
set nocount on
create table #indextable (id int identity(1,1),nid int)
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
set rowcount @PageUpperBound
exec ('insert #indextable (nid) select id from '+@table+' order by id')
declare @a varchar(8000)
set @a='select '+@Filed+' from '+@table+' O,#indextable t where O.id=t.nid and t.id>'+cast(@PageLowerBound as varchar(10))+' and t.id<='+cast(@PageUpperBound as varchar(10))+' order by t.id'
exec(@a)
set nocount off
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO
















CREATE procedure s_Page_Rise_Where
(
@pagesize int,
@pageindex int,
@Filed varchar(100),
@table varchar(50),
@where varchar(500)
)
as
set nocount on
create table #indextable (id int identity(1,1),nid int)
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
set rowcount @PageUpperBound
exec ('insert #indextable (nid) select ID from '+@table+' where '+@where+' order by ID')
declare @a varchar(8000)
set @a='select '+@Filed+' from '+@table+' O,#indextable t where O.ID=t.nid and t.id>'+cast(@PageLowerBound as varchar(10))+' and t.id<='+cast(@PageUpperBound as varchar(10))+' order by t.id'
exec(@a)
set nocount off
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO










CREATE procedure s_Page_Where
(
@pagesize int,
@pageindex int,
@Filed varchar(100),
@table varchar(50),
@where varchar(500)
)
as
set nocount on
create table #indextable (id int identity(1,1),nid int)
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
set rowcount @PageUpperBound
exec ('insert #indextable (nid) select ID from '+@table+' where '+@where+' order by ID desc')
declare @a varchar(8000)
set @a='select '+@Filed+' from '+@table+' O,#indextable t where O.ID=t.nid and t.id>'+cast(@PageLowerBound as varchar(10))+' and t.id<='+cast(@PageUpperBound as varchar(10))+' order by t.id desc'
exec(@a)
set nocount off
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO




















CREATE proc s_Restoredbase
@dbase varchar(25),
@fileName nvarchar(100)
AS
Declare @spid char(3)
Declare Cu_A cursor for
SELECT spid FROM master..sysprocesses where Spid>12 and Spid<>@@SPID
OPEN Cu_A
Fetch CU_A into @spid
While @@fetch_status=0
Begin
Exec('kill '+@spid)
Fetch CU_A into @spid
End
Close Cu_A
Deallocate Cu_A
RESTORE DATABASE @dbase FROM DISK = @fileName
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO





















CREATE PROCEDURE s_Sun
@sql varchar(100)

as
exec(@sql)
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO




insert into t_User(Name,Sex,Limit_Code,User_Id,Password) values('高处不胜寒','男','A','wufeng','wufeng')
insert into t_Limit(Name,Code) values('高级管理员','A')
insert into t_Limit(Name,Code) values('信息维护权','B')
insert into t_Sys(id,css,MainTopImg,LogonImg) values(1,'Blue.css','tp.jpg','Login.gif')
sgDanny 2004-11-03
  • 打赏
  • 举报
回复
我刚用sql server,不太懂的,肯请大家指点

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Del]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Del]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Detail]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Detail]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Page]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Page]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Page_Rise]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Page_Rise]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Page_Rise_Where]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Page_Rise_Where]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Page_Where]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Page_Where]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Restoredbase]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Restoredbase]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[s_Sun]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[s_Sun]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[v_Message_User]') and OBJECTPROPERTY(id, N'IsView') = 1)
drop view [dbo].[v_Message_User]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[T_Limit]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[T_Limit]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[T_User]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[T_User]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[t_Message]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[t_Message]
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[t_Sys]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[t_Sys]
GO

CREATE TABLE [dbo].[T_Limit] (
[Code] [nvarchar] (2) COLLATE Chinese_PRC_CI_AS NULL ,
[Name] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[T_User] (
[Id] [int] IDENTITY (1, 1) NOT NULL ,
[Name] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[Sex] [nvarchar] (1) COLLATE Chinese_PRC_CI_AS NULL ,
[Age] [int] NULL ,
[Phone] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[User_Id] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[Password] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[Limit_Code] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[t_Message] (
[id] [int] IDENTITY (1, 1) NOT NULL ,
[Title] [nvarchar] (200) COLLATE Chinese_PRC_CI_AS NULL ,
[Content] [ntext] COLLATE Chinese_PRC_CI_AS NULL ,
[User_Id] [int] NULL ,
[Input_Date] [datetime] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

CREATE TABLE [dbo].[t_Sys] (
[ID] [bigint] NOT NULL ,
[Css] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[Name] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[MainTopImg] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[IndexImg] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[LogonImg] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[T_User] WITH NOCHECK ADD
CONSTRAINT [PK_T_User] PRIMARY KEY CLUSTERED
(
[Id]
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[t_Message] WITH NOCHECK ADD
CONSTRAINT [PK_t_Message] PRIMARY KEY CLUSTERED
(
[id]
) ON [PRIMARY]
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO

CREATE VIEW dbo.v_Message_User
AS
SELECT dbo.t_Message.Content, dbo.t_Message.Title, dbo.t_Message.id,
dbo.T_User.Name AS User_Name, dbo.t_Message.Input_Date
FROM dbo.t_Message INNER JOIN
dbo.T_User ON dbo.t_Message.User_Id = dbo.T_User.Id

GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO

CREATE PROCEDURE s_Del

@table varchar(200),
@where varchar(200)
AS

exec ('delete from '+@table+' where '+@where)
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO

CREATE PROCEDURE s_Detail
@fileds varchar(200),
@table varchar(200)
as
exec ('select '+@fileds+' from '+@table)
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO

CREATE procedure s_Page
(
@pagesize int,
@pageindex int,
@Filed varchar(200),
@table varchar(200)
)
as
set nocount on
create table #indextable (id int identity(1,1),nid int)
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
set rowcount @PageUpperBound
exec ('insert #indextable (nid) select id from '+@table+' order by id desc')
declare @a varchar(8000)
set @a='select '+@Filed+' from '+@table+' O,#indextable t where O.id=t.nid and t.id>'+cast(@PageLowerBound as varchar(10))+' and t.id<='+cast(@PageUpperBound as varchar(10))+' order by t.id'
exec(@a)
set nocount off
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS OFF
GO
zzroom 2004-11-03
  • 打赏
  • 举报
回复
没错,你的SQL文件执行的结果就是这样。
zjcxc 元老 2004-11-03
  • 打赏
  • 举报
回复
不过,根据你的提示来看,.sql中应该是没有建库的语句的.否则应该出现类似下面的语句:
CREATE DATABASE 进程正在磁盘 'a' 上分配 0.75 MB 的空间。
CREATE DATABASE 进程正在磁盘 'a_log' 上分配 0.49 MB 的空间。


所以你应该看看书,看看上面写的这个语句应该在那个库中执行才对(注意选择数据库)
zjcxc 元老 2004-11-03
  • 打赏
  • 举报
回复
不奇怪嘛,建表/建视图这些语句不会返回结果(除非有错的时候),插入记录的时候才会有"所影响的行数为1" 这类的提示.
zhangzs8896 2004-11-03
  • 打赏
  • 举报
回复
没问题的,把.sql放查询分析器里执行就行。
至于书上的有没有错,你可以去企业管理器中查看一下
gimy007 2004-11-03
  • 打赏
  • 举报
回复
把你的*.sql帖出来看看

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧