用Windows 身份验证登录 右击实例名 属性 安全性 在服务器身份验证一栏选择"SQL SERVER 和 WINDOWS 身份验证"
用代码的方式参考如下: sp_password 为 Microsoft SQL Server 登录名添加或更改密码。 后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并应着手修改当前还在使用该功能的应用程序。 请改用ALTER LOGIN。 示例 A. 在旧密码未知时更改登录名的密码 以下示例显示如何使用 ALTER LOGIN 将登录名 Victoria 的密码更改为 B3r1000d#2-36。这是首选方法。执行此命令的用户必须具有 CONTROL SERVER 权限。ALTER LOGIN Victoria WITH PASSWORD = 'B3r1000d#2-36'; GO B.更改密码 以下示例显示如何使用 ALTER LOGIN 将登录名 Victoria 的密码由 B3r1000d#2-36 更改为 V1cteAmanti55imE。这是首选方法。用户 Victoria 无需其他权限即可执行此命令。其他用户则需要 ALTER ANY LOGIN 权限。 ALTER LOGIN Victoria WITH PASSWORD = 'V1cteAmanti55imE' OLD_PASSWORD = 'B3r1000d#2-36'; GO
这是VC++ 6.0连接SQL的例,参考一下:你先编一个文件,名叫ODBCTest.c 在VC++6.0中新建一个Win32 Console Application的项目,并将项目命名为ODBCTest. 然后,将已经写好的ODBCTest.c文件加入到该项目的Source Files中,编译并且执行.执行完成后,SQL Server中Student表的数据即为Kingbase中Student表的数据备份. 实验源代码.以下源码,给出了一些注释,供参考. #include #include #include #include #include #include #define SNO_LEN 30 #define NAME_LEN 50 #define DEPART_LEN 100 #define SSEX_LEN 5 int main() { /* Step 1 定义句柄和变量 */ //以king开头的表示的是连接KINGBASEES的变量 //以server开头的表示的是连接SQLSERVER的变量 SQLHENV kinghenv, serverhenv; //环境句柄 SQLHDBC kinghdbc,serverhdbc; //连接句柄 SQLHSTMT kinghstmt,serverhstmt; //语句句柄 SQLRETURN ret; SQLCHAR sName[NAME_LEN], sDepart[DEPART_LEN],sSex[SSEX_LEN],sSno[SNO_LEN]; SQLINTEGER sAge; SQLINTEGER cbAge = 0, cbSno = SQL_NTS, cbSex = SQL_NTS,cbName = SQL_NTS,cbDepart = SQL_NTS; /* Step 2 初始化环境 */ ret = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &kinghenv); ret = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &serverhenv); ret = SQLSetEnvAttr(kinghenv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0); ret = SQLSetEnvAttr(serverhenv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0); /* Step 3 :建立连接 */ ret = SQLAllocHandle(SQL_HANDLE_DBC, kinghenv, &kinghdbc); ret = SQLAllocHandle(SQL_HANDLE_DBC, serverhenv, &serverhdbc); ret = SQLConnect(kinghdbc, "KingbaseES ODBC",SQL_NTS, "SYSTEM",SQL_NTS, "MANAGER",SQL_NTS); if (!SQL_SUCCEEDED(ret)) //连接失败时返回错误值 return -1; ret = SQLConnect(serverhdbc, "SQLServer",SQL_NTS, "sa",SQL_NTS, "sa",SQL_NTS); if (!SQL_SUCCEEDED(ret)) //连接失败时返回错误值 return -1; /* Step 4 :初始化语句句柄 */ ret = SQLAllocHandle(SQL_HANDLE_STMT, kinghdbc, &kinghstmt); ret = SQLSetStmtAttr(kinghstmt,SQL_ATTR_ROW_BIND_TYPE,(SQLPOINTER)SQL_BIND_BY_COLUMN,SQL_IS_INTEGER ); ret = SQLAllocHandle(SQL_HANDLE_STMT, serverhdbc, &serverhstmt); /* Step 5 :两种方式执行语句 */ /* 预编译带有参数的语句 */ ret = SQLPrepare(serverhstmt,"INSERT INTO STUDENT (SNO,SNAME,SSEX,SAGE,SDEPT) VALUES ( , , , , )", SQL_NTS); if (ret == SQL_SUCCESS || ret == SQL_SUCCESS_WITH_INFO) { ret = SQLBindParameter(serverhstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, SNO_LEN, 0, sSno, 0, &cbSno); ret = SQLBindParameter(serverhstmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, NAME_LEN, 0, sName, 0, &cbName); ret = SQLBindParameter(serverhstmt, 3, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, 2, 0, sSex, 0, &cbSex); ret = SQLBindParameter(serverhstmt, 4, SQL_PARAM_INPUT, SQL_C_LONG,SQL_INTEGER, 0, 0, &sAge, 0, &cbAge); ret = SQLBindParameter(serverhstmt, 5, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, DEPART_LEN, 0, sDepart, 0, &cbDepart); } /*执行SQL语句*/ ret = SQLExecDirect(kinghstmt,"SELECT * FROM STUDENT",SQL_NTS); if (ret == SQL_SUCCESS || ret == SQL_SUCCESS_WITH_INFO) { ret = SQLBindCol(kinghstmt, 1, SQL_C_CHAR,sSno,SNO_LEN, &cbSno); ret = SQLBindCol(kinghstmt, 2, SQL_C_CHAR, sName, NAME_LEN, &cbName); ret = SQLBindCol(kinghstmt, 3, SQL_C_CHAR, sSex, SSEX_LEN, &cbSex); ret = SQLBindCol(kinghstmt, 4, SQL_C_LONG, &sAge, 0, &cbAge); ret = SQLBindCol(kinghstmt, 5, SQL_C_CHAR, sDepart, DEPART_LEN, &cbDepart); }
更改登录用户验证方式 (爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开) 2008-03-03 广东深圳) 登录用户的验证方式一般是在 SQL Server 2005 安装时被确定的。如果需要改变登录用 户的验证方式,只可以通过 SQL Server Configuration Manager 改变服务器的验证方式。改 变登录用户的验证方式的步骤如下:1、通过"开始"/"程序"/"Microsoft SQL Server 2005"/"SQL Server Management Studio"菜单 打开SQL Server Management Studio 工具。2、通过"连接到服务器"对话框连接到需要改变登录用户验证方式的 SQL Server 2005 服务器。3、连接正确后,SQL Server Management Studio 中的"对象资源管理器"版面将出现连接的服务 器。选中这个服务器,单击鼠标右键,选择"属性"菜单命令。4、选择"服务器属性"对话框中的"选择页"版面内的"安全性"页面。5、在"服务器身份验证"框架内,重新选择登录用户的验证方式。选择完成后单击"确定"按钮, 这时会弹出"SQL Server Management Studio"提示框,提示重新启动 SQL Server后做作的更改 才会生效。6、单击"SQL Server Management Studio"提示框中的"确定"按钮,重新启动 SQL Server,即可 更改登录用户的验证方式。
如何用SQL语句实现将SQL SERVER 2005的身份验证模式设为混合模式这个问题如果要在程序中操作,必须修改注册表里面的值, [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer] "LoginMode"=dword:00000002 这个LOGINMODE 取1为WINDOWS 取2为混合模式 然后还要让服务重新启动才可以生效
用Windows 身份验证登录
右击实例名
属性
安全性
在服务器身份验证一栏选择"SQL SERVER 和 WINDOWS 身份验证"
sp_password 为 Microsoft SQL Server 登录名添加或更改密码。
后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并应着手修改当前还在使用该功能的应用程序。 请改用ALTER LOGIN。 示例
A. 在旧密码未知时更改登录名的密码
以下示例显示如何使用 ALTER LOGIN 将登录名 Victoria 的密码更改为 B3r1000d#2-36。这是首选方法。执行此命令的用户必须具有 CONTROL SERVER 权限。ALTER LOGIN Victoria WITH PASSWORD = 'B3r1000d#2-36';
GO
B.更改密码
以下示例显示如何使用 ALTER LOGIN 将登录名 Victoria 的密码由 B3r1000d#2-36 更改为 V1cteAmanti55imE。这是首选方法。用户 Victoria 无需其他权限即可执行此命令。其他用户则需要 ALTER ANY LOGIN 权限。 ALTER LOGIN Victoria WITH
PASSWORD = 'V1cteAmanti55imE'
OLD_PASSWORD = 'B3r1000d#2-36';
GO
然后,将已经写好的ODBCTest.c文件加入到该项目的Source Files中,编译并且执行.执行完成后,SQL Server中Student表的数据即为Kingbase中Student表的数据备份.
实验源代码.以下源码,给出了一些注释,供参考.
#include
#include
#include
#include
#include
#include
#define SNO_LEN 30
#define NAME_LEN 50
#define DEPART_LEN 100
#define SSEX_LEN 5
int main()
{
/* Step 1 定义句柄和变量 */
//以king开头的表示的是连接KINGBASEES的变量
//以server开头的表示的是连接SQLSERVER的变量
SQLHENV kinghenv, serverhenv; //环境句柄
SQLHDBC kinghdbc,serverhdbc; //连接句柄
SQLHSTMT kinghstmt,serverhstmt; //语句句柄
SQLRETURN ret;
SQLCHAR sName[NAME_LEN], sDepart[DEPART_LEN],sSex[SSEX_LEN],sSno[SNO_LEN];
SQLINTEGER sAge;
SQLINTEGER cbAge = 0, cbSno = SQL_NTS, cbSex = SQL_NTS,cbName = SQL_NTS,cbDepart = SQL_NTS;
/* Step 2 初始化环境 */
ret = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &kinghenv);
ret = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &serverhenv);
ret = SQLSetEnvAttr(kinghenv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
ret = SQLSetEnvAttr(serverhenv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
/* Step 3 :建立连接 */
ret = SQLAllocHandle(SQL_HANDLE_DBC, kinghenv, &kinghdbc);
ret = SQLAllocHandle(SQL_HANDLE_DBC, serverhenv, &serverhdbc);
ret = SQLConnect(kinghdbc,
"KingbaseES ODBC",SQL_NTS,
"SYSTEM",SQL_NTS,
"MANAGER",SQL_NTS);
if (!SQL_SUCCEEDED(ret)) //连接失败时返回错误值
return -1;
ret = SQLConnect(serverhdbc,
"SQLServer",SQL_NTS,
"sa",SQL_NTS,
"sa",SQL_NTS);
if (!SQL_SUCCEEDED(ret)) //连接失败时返回错误值
return -1;
/* Step 4 :初始化语句句柄 */
ret = SQLAllocHandle(SQL_HANDLE_STMT, kinghdbc, &kinghstmt);
ret = SQLSetStmtAttr(kinghstmt,SQL_ATTR_ROW_BIND_TYPE,(SQLPOINTER)SQL_BIND_BY_COLUMN,SQL_IS_INTEGER ); ret = SQLAllocHandle(SQL_HANDLE_STMT, serverhdbc, &serverhstmt);
/* Step 5 :两种方式执行语句 */ /* 预编译带有参数的语句 */
ret = SQLPrepare(serverhstmt,"INSERT INTO STUDENT (SNO,SNAME,SSEX,SAGE,SDEPT) VALUES ( , , , , )", SQL_NTS);
if (ret == SQL_SUCCESS || ret == SQL_SUCCESS_WITH_INFO)
{
ret = SQLBindParameter(serverhstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, SNO_LEN, 0, sSno, 0, &cbSno);
ret = SQLBindParameter(serverhstmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, NAME_LEN, 0, sName, 0, &cbName);
ret = SQLBindParameter(serverhstmt, 3, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, 2, 0, sSex, 0, &cbSex);
ret = SQLBindParameter(serverhstmt, 4, SQL_PARAM_INPUT, SQL_C_LONG,SQL_INTEGER, 0, 0, &sAge, 0, &cbAge);
ret = SQLBindParameter(serverhstmt, 5, SQL_PARAM_INPUT, SQL_C_CHAR,SQL_CHAR, DEPART_LEN, 0, sDepart, 0, &cbDepart);
} /*执行SQL语句*/
ret = SQLExecDirect(kinghstmt,"SELECT * FROM STUDENT",SQL_NTS);
if (ret == SQL_SUCCESS || ret == SQL_SUCCESS_WITH_INFO)
{
ret = SQLBindCol(kinghstmt, 1, SQL_C_CHAR,sSno,SNO_LEN, &cbSno);
ret = SQLBindCol(kinghstmt, 2, SQL_C_CHAR, sName, NAME_LEN, &cbName);
ret = SQLBindCol(kinghstmt, 3, SQL_C_CHAR, sSex, SSEX_LEN, &cbSex);
ret = SQLBindCol(kinghstmt, 4, SQL_C_LONG, &sAge, 0, &cbAge);
ret = SQLBindCol(kinghstmt, 5, SQL_C_CHAR, sDepart, DEPART_LEN, &cbDepart);
}
出现错误信息:用户'sa'登陆失败,该用户与可信SQL Server连接无关联!
请问怎么解决?
(爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开) 2008-03-03 广东深圳) 登录用户的验证方式一般是在 SQL Server 2005 安装时被确定的。如果需要改变登录用
户的验证方式,只可以通过 SQL Server Configuration Manager 改变服务器的验证方式。改
变登录用户的验证方式的步骤如下:1、通过"开始"/"程序"/"Microsoft SQL Server 2005"/"SQL Server Management Studio"菜单
打开SQL Server Management Studio 工具。2、通过"连接到服务器"对话框连接到需要改变登录用户验证方式的 SQL Server 2005 服务器。3、连接正确后,SQL Server Management Studio 中的"对象资源管理器"版面将出现连接的服务
器。选中这个服务器,单击鼠标右键,选择"属性"菜单命令。4、选择"服务器属性"对话框中的"选择页"版面内的"安全性"页面。5、在"服务器身份验证"框架内,重新选择登录用户的验证方式。选择完成后单击"确定"按钮,
这时会弹出"SQL Server Management Studio"提示框,提示重新启动 SQL Server后做作的更改
才会生效。6、单击"SQL Server Management Studio"提示框中的"确定"按钮,重新启动 SQL Server,即可
更改登录用户的验证方式。
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]
"LoginMode"=dword:00000002
这个LOGINMODE
取1为WINDOWS
取2为混合模式
然后还要让服务重新启动才可以生效