1、在控制面板-->管理工具-->数据源(ODBC),选中跟踪标签页,单击“立即启用跟踪“按钮。2、运行ssmsee.exe(SQL Server Management Studio Express)连接本地数据库执行sql语句后,上面设置的跟踪日志中没有sql语句,请问这是为什么呢?跟踪文件如下:ssmsee          428-15c4 ENTER SQLAllocHandle 
SQLSMALLINT                  1 <SQL_HANDLE_ENV>
SQLHANDLE           0x00000000
SQLHANDLE *         0x0012E218ssmsee          428-15c4 EXIT  SQLAllocHandle  with return code 0 (SQL_SUCCESS)
SQLSMALLINT                  1 <SQL_HANDLE_ENV>
SQLHANDLE           0x00000000
SQLHANDLE *         0x0012E218 ( 0x01DD1F60)ssmsee          428-15c4 ENTER SQLSetEnvAttr 
SQLHENV             0x01DD1F60
SQLINTEGER                 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER                 3 <SQL_OV_ODBC3>
SQLINTEGER                  -5 ssmsee          428-15c4 EXIT  SQLSetEnvAttr  with return code 0 (SQL_SUCCESS)
SQLHENV             0x01DD1F60
SQLINTEGER                 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER                 3 <SQL_OV_ODBC3>
SQLINTEGER                  -5 ssmsee          428-15c4 ENTER SQLAllocHandle 
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x01DD1F60
SQLHANDLE *         0x0012E21Cssmsee          428-15c4 EXIT  SQLAllocHandle  with return code 0 (SQL_SUCCESS)
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x01DD1F60
SQLHANDLE *         0x0012E21C ( 0x0022D210)ssmsee          428-1080 ENTER SQLAllocHandle 
SQLSMALLINT                  1 <SQL_HANDLE_ENV>
SQLHANDLE           0x00000000
SQLHANDLE *         0x0525F1DCssmsee          428-1080 EXIT  SQLAllocHandle  with return code 0 (SQL_SUCCESS)
SQLSMALLINT                  1 <SQL_HANDLE_ENV>
SQLHANDLE           0x00000000
SQLHANDLE *         0x0525F1DC ( 0x0022D4F0)ssmsee          428-1080 ENTER SQLSetEnvAttr 
SQLHENV             0x0022D4F0
SQLINTEGER                 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER                 3 <SQL_OV_ODBC3>
SQLINTEGER                  -5 ssmsee          428-1080 EXIT  SQLSetEnvAttr  with return code 0 (SQL_SUCCESS)
SQLHENV             0x0022D4F0
SQLINTEGER                 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER                 3 <SQL_OV_ODBC3>
SQLINTEGER                  -5 ssmsee          428-1080 ENTER SQLAllocHandle 
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x0022D4F0
SQLHANDLE *         0x0525F1E0ssmsee          428-1080 EXIT  SQLAllocHandle  with return code 0 (SQL_SUCCESS)
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x0022D4F0
SQLHANDLE *         0x0525F1E0 ( 0x0022D568)ssmsee          428-1080 ENTER SQLSetConnectAttr 
SQLHDBC             0x0022D568
SQLINTEGER                1241 <unknown>
SQLPOINTER          [Unknown attribute 1241]
SQLINTEGER                  -6 ssmsee          428-1080 EXIT  SQLSetConnectAttr  with return code 0 (SQL_SUCCESS)
SQLHDBC             0x0022D568
SQLINTEGER                1241 <unknown>
SQLPOINTER          [Unknown attribute 1241]
SQLINTEGER                  -6 ssmsee          428-1080 ENTER SQLSetConnectAttr 
SQLHDBC             0x0022D568
SQLINTEGER                1242 <unknown>
SQLPOINTER          [Unknown attribute 1242]
SQLINTEGER                  -3 ssmsee          428-1080 EXIT  SQLSetConnectAttr  with return code 0 (SQL_SUCCESS)
SQLHDBC             0x0022D568
SQLINTEGER                1242 <unknown>
SQLPOINTER          [Unknown attribute 1242]
SQLINTEGER                  -3 ssmsee          428-1080 ENTER SQLBrowseConnectW 
HDBC                0x0022D568
WCHAR *             0x6F4C8BB4 [      -3] "******\ 0"
SWORD                       -3 
WCHAR *             0x6F4C8BB4 
SWORD                       -3 
SWORD *             0x00000000ssmsee          428-1080 EXIT  SQLBrowseConnectW  with return code 99 (SQL_NEED_DATA)
HDBC                0x0022D568
WCHAR *             0x6F4C8BB4 [      -3] "******\ 0"
SWORD                       -3 
WCHAR *             0x6F4C8BB4 
SWORD                       -3 
SWORD *             0x00000000ssmsee          428-1080 ENTER SQLGetDiagRecW 
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x0022D568
SQLSMALLINT                  1 
SQLWCHAR *          0x0525F190
SQLINTEGER *        0x00000000
SQLWCHAR *          0x0022E130 
SQLSMALLINT                256 
SQLSMALLINT *       0x0525F1D4ssmsee          428-1080 EXIT  SQLGetDiagRecW  with return code 100 (SQL_NO_DATA_FOUND)
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x0022D568
SQLSMALLINT                  1 
SQLWCHAR *          0x0525F190
SQLINTEGER *        0x00000000
SQLWCHAR *          0x0022E130 
SQLSMALLINT                256 
SQLSMALLINT *       0x0525F1D4ssmsee          428-1080 ENTER SQLDisconnect 
HDBC                0x0022D568ssmsee          428-1080 EXIT  SQLDisconnect  with return code 0 (SQL_SUCCESS)
HDBC                0x0022D568ssmsee          428-1080 ENTER SQLFreeHandle 
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x0022D568ssmsee          428-1080 EXIT  SQLFreeHandle  with return code 0 (SQL_SUCCESS)
SQLSMALLINT                  2 <SQL_HANDLE_DBC>
SQLHANDLE           0x0022D568ssmsee          428-1080 ENTER SQLFreeHandle 
SQLSMALLINT                  1 <SQL_HANDLE_ENV>
SQLHANDLE           0x0022D4F0ssmsee          428-1080 EXIT  SQLFreeHandle  with return code 0 (SQL_SUCCESS)
SQLSMALLINT                  1 <SQL_HANDLE_ENV>
SQLHANDLE           0x0022D4F0

解决方案 »

  1.   

    SQL Server Management Studio Express连接本地数据库不使用你配置的odbc。
      

  2.   

    谢谢回复,但是我用SQL Server Management Studio Express连接到远程服务器执行sql语句后,跟踪日志中同样也没有记录sql语句呀!
      

  3.   

    你用SQL Server Management Studio Express连哪个数据库也都没用到odbc,它是通过tcp或者命名管道直接和数据库连接的
      

  4.   

    调用的是.Net SqlClient Data Provider接口
      

  5.   

    地址http://msdn.microsoft.com/en-us/library/ms971550