Tag: 数据库预览模式: 普通 | 列表

由一个值查找到包含该值的数据库具体的某个表及字段名。

 

SQL代码
  1. declare @cloumns varchar(40)  
  2. declare @tablename varchar(40)  
  3. declare @str varchar(40)  
  4. declare @counts int  
  5. declare @sql nvarchar(2000)  
  6. declare MyCursor Cursor For   
  7. Select a.name as Columns, b.name as TableName from syscolumns a,sysobjects b,systypes c   
  8. where a.id = b.id  
  9. and b.type = 'U'   
  10. and a.xtype=c.xtype  
  11. and c.name like '%char%'  
  12. set @str='张三'  
  13. Open MyCursor  
  14. Fetch next From MyCursor Into @cloumns,@tablename  
  15. While(@@Fetch_Status = 0)  
  16. Begin  
  17.  set @sql='select  @tmp_counts=count(*) from ' +@tablename+ ' where ' +@cloumns+' = ''' +@str+ ''''  
  18. execute sp_executesql  @sql,N'@tmp_counts int out',@counts out  
  19.  if @counts>0  
  20.  begin  
  21.  print '表名为:'+@tablename+',字段名为'+@cloumns  
  22.  end  
  23. Fetch next From MyCursor Into @cloumns,@tablename  
  24. End  
  25. Close MyCursor  
  26. Deallocate MyCursor  

 

Tags: 字段 数据库 数据表

分类:数据 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 1021

下面的提示虽然不常见,但对于ASP程序员来说绝对不会陌生吧。

Microsoft OLE DB Provider for SQL Server 错误 '80004005'

连接字符串属性无效

关于这个问题的解答,网络上有很多版本,但基本上都是针对连接字符串的写法,而没有考虑到一种比较极端的情况:SQL Server没有启动。如下图:

不知道是什么原因,有时服务器重启后,SQL Server不会自动启动,所以就出现了本文开头提到的错误提示,解决这个自动启动的问题是另一回事了。现在想讨论的是在ASP里怎么去捕捉这个80004005错误。

在ASP代码是加下面的语句没有效果。

ASP/Visual Basic代码
  1. StrDSN="Provider=SQLOLEDB.1;Persist Security Info=false;Server=" & StrServerName & ";Database=" & StrDBName & ";Uid=" & StrUid & ";Pwd=" & StrPwd & ";Pooling=true; MAX Pool Size=512;Min Pool Size=50;Connection Lifetime=30;"  
  2. Conn.Open StrDSN  
  3. If Err.number>0 Then  
  4.     'Response.write  Err.number&Err.Description  
  5.     'Response.write "提示:数据连接错误。"  
  6.     Response.redirect "/"  
  7.     Response.End  
  8. End If  

查看更多...

Tags: SQL 数据库 服务 连接 ASP 错误信息

分类:网络 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 1034

ASP+ACCESS数据库的网站,远程服务器上某页面提示如下错误:

ADODB.Recordset 错误 '800a0cc1'

在对应所需名称或序数的集合中,未找到项目。

报错的那行代码里有一查询代码:rs("mytable.btype")

可以确定的是表mytable里有列btype,SQL字符串里是用“select mytable.*,table2.* from mytable,table2...”来构建查询语句的。

而且奇怪的是本地调试没有报错,能正常得到数据。

这个问题纠结了一天,后来灵机一动:运行环境不一样,会不会是表名.列名的写法在本地可以,在服务器上不行呢?于是尝试一下,果然如我设想的一样:同样的代码,本地调试行,远程WEB服务器不行。

查看更多...

Tags: access ASP 数据库 连接 查询 源动力

分类:网络 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 3025

天杀的ACCESS数据库连接问题

ACCESS的数据库,ASP的环境,测试报下面的错误:

Microsoft JET Database Engine '80040e14'

From子句语法错误

用下面的连接代码替换着用,居然就能不出错。先是用方法一,报错,改用方法二正常。后来再用方法一,也正常。

查看更多...

Tags: access ASP 数据库 连接

分类:数据 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 1929

OLE DB Provider for ODBC Drivers (0x80004005)错误

Windows XP 系统,ASP连Access数据库,保存数据时出现下面的错误提示:

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver]行中有错误
/HrDemandAccept.asp, 第 246 行

由于多时没有用Access的数据库写网站了,所以一时对这样的提示不知所措,网上搜索,有若干记录是关于这样的提示的问题描述及解答,但未能解决这个问题。后来在Visual Stadio 2005里调试时无意中监视代码里rs.update时才发现问题的根本所在,如下图:

明白是怎么回事了吧?“不能是零长度的字符串”!又想说一句:神奇的MS,出错提示都这么高深。从网上搜索相同问题的结果来看,很多人提到最多的是连接数据库的字串方式,但基本没有人提到这样的原因,算是让我遇上了呀。

查看更多...

Tags: access 数据库 ASP 空值

分类:网络 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 1920

SQL Server跨服务器导数据的方法

需求:某表里某列的值为Null,要填充其值,得从另一台服务器的某表如表A里找到相对应的值,本表有外键可与表A关联。

详细如下:

要把表Sheet2$导入同一数据库的另一表tdfile里,但tdfile.EntID的值不能为NUll,但Sheet2$.EntID的值为NUll。

Sheet2$ 里有列:EntID,EntRegNo,其中EntID列为Null值,要从下面所述的表里获取相应的值。

查看更多...

Tags: SQL 数据库 导数据 跨服务器 ASP

分类:数据 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 2327

清除/压缩数据库日志文件的方法

有些知识是需要记录而不是记忆,比如说现在这个日志清除或压缩,拼写有点复杂,记是记不住的,所以只好写下来放在这里备忘。

关于这个目的,之前有备忘过,简单实用:
backup log myTableName with no_log dbcc shrinkdatabase(myTableName)

查看更多...

Tags: 数据库 SQL 日志

分类:数据 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 2497

数据库记录集打开时的游标锁定类型

rs.open   sql,conn,1,3   、rs.open   sql,conn,1,1和rs.open   sql,conn,3,2
其中的1,2,3是什么意思啊?

例如RS.OPEN   SQL,CONN,A,B ,则A,B值的含意是:

查看更多...

Tags: 游标 数据库 记录集

分类:网络 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 3373