aspnet数据库数据
‘壹’ aspnet上传大量图片存进数据库好还是单独存储好拜托了各位 谢谢
不要把图片保存到数据库里,只要把图片路径保存到数据库就可以了,图片保存在服务器,这样对服务器比较好。 Asp.Net屋---专业的Asp.Net学习网站 http://www.aspx58.com.cn
‘贰’ 数据库中有几万条数据,怎样使用aspnetpage分页控件结合数据库分页读取呢
可以用存储过程分页
/*
函数名称: GetRecordFromPage
函数功能: 获取指定页的数据
参数说明: @tblName 包含数据的表名
@fldName 关键字段名
@PageSize 每页记录数
@PageIndex 要获取的页码
@OrderType 排序类型, 0 - 升序, 1 - 降序
@strWhere 查询条件 (注意: 不要加 where)
*/
CREATE PROCEDURE GetRecordFromPage
@tblName varchar(255), -- 表名
@fldName varchar(255), -- 字段名
@PageSize int = 10, -- 页尺寸
@PageIndex int = 1, -- 页码
@OrderType bit = 0, -- 设置排序类型, 非 0 值则降序
@strWhere varchar(2000) = '' -- 查询条件 (注意: 不要加 where)
AS
declare @strsql varchar(6000) -- 主语句
declare @strTmp varchar(1000) -- 临时变量
declare @strOrder varchar(500) -- 排序类型
if @OrderType != 0
begin
set @strTmp = '<(select min'
set @strOrder = ' order by [' + @fldName + '] desc'
end
else
begin
set @strTmp = '>(select max'
set @strOrder = ' order by [' + @fldName +'] asc'
end
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['
+ @fldName + '] from [' + @tblName + ']' + @strOrder + ') as tblTmp)'
+ @strOrder
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['
+ @fldName + '] from [' + @tblName + '] where ' + @strWhere + ' '
+ @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder
if @PageIndex = 1
begin
set @strTmp = ''
if @strWhere != ''
set @strTmp = ' where (' + @strWhere + ')'
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + ']' + @strTmp + ' ' + @strOrder
end
exec (@strSQL)
GO
‘叁’ aspnet如何在后台获得数据库某张表的多行信息
你可以应用轮回获取DataTable dt;while(sqldatareader.read()){dt.Load(sqldatareader);}return dt;这个dt就保存了多行数据
‘肆’ 在asp.net中,无法添加数据库链接,怎么解决呢
1、打开SDK 命令提示(所有程序——Microsoft .NET Framework SDK v2.0——SDK 命令提示。也可打开VS的命令提示),输入aspnet_regsql,弹出ASP.NET SQL Server 安装向导,点下一步,点“为应用程序服务配置 SQL Server”,点下一步,数据库用<默认>(aspnetdb),点下一步,完成。
2、打开Visual Studio 2005,依次:工具-->选项-->数据库工具-->数据连接-->SQL Server实例名称(默认为空),改为你的服务器名称(默认实例的名称即为你的计算机名称)。
3、还是Visual Studio 2005,工具-->连接到数据库-->服务器名(输入刚才的服务器),可以按你要求选择Windows或SQL Server身份验证,然后数据库选择刚才的aspnetdb。测试OK后,点“高级”,复制对话窗口的最下面一行语句(比如,如果你之前选择“使用SQL Server身份验证”,则复制出来的语句类似为Data Source=Server;Initial Catalog=aspnetdb;User ID=sa)
4、打开IIS:默认网站-->属性-->ASP.NET-->编辑全局配置-->常规-->点击“连接字符串管理器”的“LocalSqlServer”后,点编辑,然后清除里面的字符串,再粘贴第3步所复制的字符串,如果你第3步是选择SQL Server身份验证的,还需在后边再手动输入“;Password=sa”,当然,后面的sa用你的密码替换,然后确定,如果第3步是Windows身份验证的,则粘贴后直接确定保存即可 -->应用。(如果第3步是选择SQL Server身份验证的,则修改后的连接字符串类似为Data Source=Server;Initial Catalog=aspnetdb;User ID=sa;Password=sa)
5、还是在IIS:默认网站-->属性-->ASP.NET-->编辑全局配置-->身份验证-->选定"启用角色管理"-->确定。
按照上面的步骤,到第2步时就无法完成,提示sql server不存在。突然想到,会不会sql server express服务还没启动?打开服务管理,果然。手动启动它,又提示启动失败,请查看日志。打开管理工具中的事件查看器,错误信息:
文件 "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\mastlog.ldf" 已压缩,但未驻留在只读数据库或文件组中。必须将此文件解压缩。
‘伍’ aspnet怎么连接windows认证的sql数据库
Data Source=localhost;Initial Catalog=cdshop;Integrated Security=True
loacalhost 是你要访问的数据源地址
可填
. 或者 localhost 代表本机 (.\sqlexpress 代表sqlserver2005的本机)
机器名 或者IP地址 就是远程服务器了
cdshop改成你的数据库名就可以了.
‘陆’ asp.net与数据库连接出错的问题
VS只自带了数据库引擎,没有带管理器,要自己到微软网站下载Sql Server Management Studio Express.然后按下面的步骤做。
1.配置SQLServer外围应用服务器,开启SQL2005远程连接功能:
操作方式如下,点击“配置工具”->“SQLServer外围应用配置器”,然后在打开的窗口中选择“服务和连接的外围应用配置器”->然后选择Database Engine节点下的 “远程连接”,选择“本地连接和远程连接”,同时选择“同时使用TCP/IP和named pipes”,确定后然后需要重新启动数据库服务就可以了。
2.把登陆设置改为SQLServer 和 Windows 身份验证模式,具体设置如下:
打开SQLServer Management Studio管理器,点击服务器上面右键然后查看属性,在安全性选项里面对服务身份验证选择“SQLServer 和 Windows 身份验证模式”。
3.修改SQLServer sa的密码,体设置如下:
在SQLServer Management Studio管理器中,展开服务器上的“安全性”->登陆名->在sa帐号上点右键属性,这样在“常规”的选择页中更改sa登陆帐号的密码。注意SQLServer2005中,不允许密码设置简单,否则会通不过。然后在选择页的“状态”的登录修改为启用。
4.数据库连接字符串:
数据库连接字符串有很多种,如:
Data Server=.\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sapassSql
Data Server=服务器名\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=localhost\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=.;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=服务器名;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
具体的选择是和SQLServer2005的版本有关系,如果是SQLServer 2005 Express版本,则必须要有“\SQLEXPRESS”,因此如果字符串是定义为一个变量的时候应该写成Server=. \\SQLEXPRESS。
5.在.net2.0 Framework中注册SQLServer数据库:
找到.net2.0 Framework的安装路径,一般安装在 “C:\Windows\Microsoft.NET\Framework\v2.0.50727”目录下,然后在DOS中在指定目录下运行“ASPNET_REGSQL”指令,就会出现ASP.NETSQLServer安装向导,点击“下一步”,然后选择“为应用程序服务配置SQLServer”,然后直接点击下一步,就会完成SQLServer注册界面。我们就会看到NorthWind数据库下面多了几张表。
6.设置web.config文件:
在应用程序中的web.config文件添加如下数据库连接的配置:
程序代码:
<connectionStrings>
<add name="ConnectionSqlServer" connectionString="Data Source=.\SQL2005;Initial Catalog=Test2008;User ID=sa;PWD=sasasasa" providerName="System.Data.SqlClient"/>
</connectionStrings> 这样我们便在Visual Studio 2005中可以轻松的调用SQLServer的数据连接了。
现在我们来对上面所做的步骤来测试数据的连接,我们打开Visual Studio 2005,在视图的“服务器资源管理器”来添加SQLServer 2005的连接,通过输入服务器名称和对应的SQLServer身份验证的sa用户名密码后,选取对应的数据库,然后点击“测试连接”,就会成功的连接到数据库了。
如果sa无法登录,检查sa的状态属性中,是否启用了登录
‘柒’ ASP.NET连接数据库有哪几种方法
连接Access
首先看一个例子代码片断:
程序代码:
--------------------------------------------------------------------------------
using
System.Data;
using
System.Data.OleDb;
......
string
strConnection="Provider=Microsoft.Jet.OleDb.4.0;";
strConnection+=@"Data
Source=C:\BegASPNET\Northwind.mdb";
OleDbConnection
objConnection=new
OleDbConnection(strConnection);
......
objConnection.Open();
objConnection.Close();
......
--------------------------------------------------------------------------------
解释:
连接Access数据库需要导入额外的命名空间,所以有了最前面的两条using命令,这是必不可少的!
strConnection这个变量里存放的是连接数据库所需要的连接字符串,他指定了要使用的数据提供者和要使用的数据源.
"Provider=Microsoft.Jet.OleDb.4.0;"是指数据提供者,这里使用的是Microsoft
Jet引擎,也就是Access中的数据引擎,asp.net就是靠这个和Access的数据库连接的.
"Data
Source=C:\BegASPNET\Northwind.mdb"是指明数据源的位置,他的标准形式是"Data
Source=MyDrive:MyPath\MyFile.MDB".
ps:
1."+="后面的"@"符号是防止将后面字符串中的"\"解析为转义字符.
2.如果要连接的数据库文件和当前文件在同一个目录下,还可以使用如下的方法连接:
strConnection+="Data
Source=";
strConnection+=MapPath("Northwind.mdb");
这样就可以省得你写一大堆东西了!
3.要注意连接字符串中的参数之间要用分号来分隔.
"OleDbConnection
objConnection=new
OleDbConnection(strConnection);"这一句是利用定义好的连接字符串来建立了一个链接对象,以后对数据库的操作我们都要和这个对象打交道.
"objConnection.Open();"这用来打开连接.至此,与Access数据库的连接完成.其余操作(插入,删除...)请参阅相关书籍
连接SQL
Server
例子代码片断:
程序代码:
--------------------------------------------------------------------------------
using
System.Data;
using
System.Data.SqlClient;
...
string
strConnection="user
id=sa;password=;";
strConnection+="initial
catalog=Northwind;Server=YourSQLServer;";
strConnection+="Connect
Timeout=30";
SqlConnection
objConnection=new
SqlConnection(strConnection);
...
objConnection.Open();
objConnection.Close();
...
--------------------------------------------------------------------------------
解释:
连接SQL
Server数据库的机制与连接Access的机制没有什么太大的区别,只是改变了Connection对象和连接字符串中的不同参数.
首先,连接SQL
Server使用的命名空间不是"System.Data.OleDb",而是"System.Data.SqlClient".
其次就是他的连接字符串了,我们一个一个参数来介绍(注意:参数间用分号分隔):
"user
id=sa":连接数据库的验证用户名为sa.他还有一个别名"uid",所以这句我们还可以写成"uid=sa".
"password=":连接数据库的验证密码为空.他的别名为"pwd",所以我们可以写为"pwd=".
这里注意,你的SQL
Server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录.如果你的SQL
Server设置为Windows登录,那么在这里就不需要使用"user
id"和"password"这样的方式来登录,而需要使用"Trusted_Connection=SSPI"来进行登录.
"initial
catalog=Northwind":使用的数据源为"Northwind"这个数据库.他的别名为"Database",本句可以写成"Database=Northwind".
"Server
=YourSQLServer":使用名为"YourSQLServer"的服务器.他的别名为"Data
Source","Address","Addr".如果使用的是本地数据库且定义了实例名,则可以写为"Server=(local)\实例名";如果是远程服务器,则将"(local)"替换为远程服务器的名称或IP地址.
"Connect
Timeout=30":连接超时时间为30秒.
在这里,建立连接对象用的构造函数为:SqlConnection.
其余的就和Access没有什么区别了!
‘捌’ asp.net网站开发一般都用什么控件显示数据库信息用什么控件分页请详细说下怎么分页最好!谢谢
前台使用DataList、ListView、Repeater 后台一般使用GridView GridView和ListView(VS2008以后才有)都自带分页功能 DataList和Repeater需要手动分页: 分页方式有很多种 1、SQL语句分页:就是前台调用时动态传页码 后台拼SQL语句(select top 页大小 * from 表名 where 主键 not in(select top (页码-1)*页大小 主键 from 表名)) 2、存储过程,原理和上面的差不多 3、使用GridView中封装的PageDataSource(实例化类,取数据源,设置允许分页、设置分页大小、最后把数据源指向展示控件,其实可以和第三方控件的aspnet分页控件配合使用),适用于数据记录不是太大的时候,因为会把全所记录都加内存中,数据太大会占用内存 4、VS2008以后有LINQ,这LINQ的SKIP一样可以实例。优点:延迟查询,不用把所有数据全查出来,应用于数据非常多的时候,如果用的是VS2008之前的IDE那么就用第一、二种方法吧 5、在后台用生成静态页的方式,把前台的分页功能全都生成静态文件,这样虽然占用空间大一些,但速度很快
‘玖’ ASP.NET与数据库的连接问题
SQL Server 是本地还是远程 远程你检查一下是否允许进行远程连接
你尝试禁用个性化服务,修改WebPartManager的属性:Personalization -> Enabled 为 False
不行 你把上面代码改下
<add name="LocalSqlServer" connectionString="Data Source=localhost;Initial Catalog=lecro;Persist Security Info=True;User ID=sa;Password="
providerName="System.Data.SqlClient" />
试一下
‘拾’ 如何将ASPNET网页中的数据更新到数据库的表中其中表已经定义。
protected void Button1_Click(object sender, EventArgs e)
{
System.Data.SqlClient.SqlConnection cn = new System.Data.SqlClient.SqlConnection("Data Source="数据库IP地址";Initial Catalog = "数据库名称";User ID="用户名";Password="密码";Connect Timeout=60");//数据库连接
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand();
string sql = "insert investigation (字段1名称,字段2名称) values('"+Textbox1.Text+"','"+Textbox2.Text+"')";
cmd.CommandText = sql;//要执行的sql语句
cmd.Connection = cn;//传入数据库连接参数
cn.Open();//打开数据库连接
if(cmd.ExecuteNonQuery())//执行cmd.CommandText中的sql
{
//成功时执行
}
else
{
//失败时执行
}
}
页面中加入
<form id="form1" runat="server">
<asp:TextBox ID="Textbox3" runat="server"></asp:TextBox>
<asp:TextBox ID="Textbox4" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</form>