SQL Server 安装和使用时,常见错误

来源:互联网 发布:淘宝卖家邮费很便宜么 编辑:程序博客网 时间:2024/06/05 00:24

1)DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒绝访问

解决办法:

1、打开SQL Server Configuration Manager -> SQL Server2008 网络配置-> MSSQLSERVER的协议->TCP/IP
2、右键单击启动TCP/IP
3、双击进入属性,把IP地址中的IP all中的TCP端口设置为1433
4、重新启动SQL Server 2008服务

 

2)SQL Server ODBC数据源 连接失败问题 无效的连接

连接失败:
SQLState:'01000'
SQL Server 错误:14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen(Invalid Instance()).
连接失败:
SQLState:'08001'
SQL Server 错误:14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]无效的连接.

解决方式:

启动服务:SQL Server Browser和SQL Server VSS Writer

 

(3)

_ConnectionPtr:是vc用ADO开发数据库时的连接
_RecordsetPtr:是vc用ADO开发数据库时的纪录集
CRecordset:是vc用ODBC开发数据库的纪录集
CDatabase:是vc用ODBC开发数据库的连接

 

(4安装或卸载SQL Server遇到错误提示:以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机(安装程序支持规则)。

解决办法:

1、在开始->运行中输入regedit(注册表编辑器)
2
、到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\
3
、在右边窗口右击PendingFileRenameOperations,选择删除,然后确认。
4
、重新安装,问题解决(如果没解决就是别的什么问题了)。

 

(5)此计算机上安装了 Microsoft Visual Studio 2008 的早期版本。

请在安装 SQL Server 2008 前将 Microsoft Visual Studio 2008 升级到 SP1。Visual Studio SP1 可在http://go.microsoft.com/fwlink/?LinkId=159627 找到。

 

(6)SQL 导出数据库时,要在任务->分离里面将数据库分离,然后再将.mdf;.ldf文件copy给别人使用,不然直接将没有分离的数据库给别人使用,会出现附加数据时,报错:

 

 

 

(7)卸载sql 2008 时,提示错误:

    SQL Server 安装程序失败。SQL Server 安装程序遇到以下错误:

    在创建窗口句柄之前,不能在控件上调用InVoke或BeginInVoke。。

 

 解决方法和第4条类似!

 

(8)性能计数器注册表配置单元一致性 失败

http://www.cnblogs.com/bigboo/archive/2008/09/30/1302483.html

 

(9)SQL 查询分析器如何注释代码

当行 --

多行 /* */


(10)如何获取SQL 2008 数据库中的数据,转换成CString类型;

首先将 _variant_t 类型的变量,转换成字符串,

_variant_t var;  

CString str; //转换以后的字符串

//以下代码演示如何转换为C标准字符串型
if (var.vt == VT_I4)
{
    long lNum;
    char szCh[21];
    str=var.bstrVal;
    WideCharToMultiByte
             (CP_ACP, 0, var.bstrVal, -1,
              szCh, sizeof(szCh), NULL, NULL);
}

//以下代码演示如何转换成逻辑型
if( var.vt == VT_BOOL)
{
    BOOL bVar;
    lNum=var.lVal;
    bVar= var.boolVar==0? FALSE : TRUE;
}

//以下代码演示为其余类型(补充)
switch(var.vt)
{

case VT_BSTR:         //var is BSTR type
     str=var.bstrVal;
     break;

case VT_I2:           //var is short int type
     str.Format("%d",(int)var.iVal);
     break;

case VT_I4:          //var is long int type
     str.Format("%d",var.lVal);
     break;

case VT_R4:         //var is float type
     str.Format("%10.6f",(double)var.fltVal);
     break;

case VT_R8:         //var is double type
     str.Format("%10.6f",var.dblVal);
     break;

case VT_CY:        //var is CY type
     str=COleCurrency(var).Format();
     break;

case VT_DATE:     //var is DATE type
     str=COleDateTime(var).Format();
     break;

case VT_BOOL:     //var is  VARIANT_BOOL
     str= (var.boolVal==0) ?"FALSE": "TRUE";
     break;

default:
     str.Format("Unk type %d\n",var.vt);
     TRACE("Unknown type %d\n",var.vt);
}

具体举例如下:

      _variant_t var = m_pRecordOut->GetCollect((_variant_t)strCol);  //strCol 为数据库中的一个字段

          if (var.vt==VT_DATE)
          {
               CString str=COleDateTime(var).Format();
          }


(11)DateTime和CString相互转换 

CString strCString;
 strCString=Y+"-"+M+"-"+D+" "+H+":"+m+":"+S;
 COleVariant vtime(strCString);
 vtime.ChangeType(VT_DATE);
 COleDateTime datetime=vtime;

 

COleDateTime datetime=COleDateTime::GetCurrentTime();
 CString tempTime;
 tempTime=datetime.Format("%Y-%m-%d %H:%M:%S");

 

(12)datatime 类型模糊查询

SELECT * FROM T WHERE Convert(varchar,sendTime,120) LIKE '2012-08-18 14:49%'

其中:T为数据库的表,sendTime是数据库中的时间字段的字段名。这样就可以查询2012-08-18 14:49的记录。

 

 

(13)登陆时出现:已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: 共享内存提供程序, error: 0 - 管道的另一端上无任何进程。)

首先选中服务器(右键)->属性->安全性->服务器身份验证修改为"SQL SERVER和WINDOWS身份验证模式"
其次展开服务器上的"安全性"->登陆名->选中SA登陆帐号(右键)->状态->登陆修改为启用 


(14)Microsoft SQL Server错误233的解决办法:

    已成功与服务器建立连接,但是在登录过程中发生错误。(provider:命名管道提供程序,error:0-管道的另一端上无任何进程。)(Microsoft SQL Server,错误:233)

    解决方法:打开“开始—所有程序—Microsoft SQL Server 2005 —配置工具—SQL Server 配置管理器”,在弹出的窗体中,找到“SQL Server 2005 网络配置”,把“MSSQLSERVER的协议”下的“Named Pipes”和“TCP/IP”启用,然后重新启动SQL Server 即可。

原创粉丝点击