Hanya ada dua mode yang saya tahu dapat Anda gunakan:Windows atau SQL Server Authentication. Ini berarti Anda dibatasi hanya pada dua pilihan:Anda menggunakan akun Windows, atau Anda membuat login SQL Server yang dapat Anda gunakan untuk mengautentikasi.
EDIT:
Untuk membuat login server sql secara terprogram, Anda dapat menggunakan objek Sql Server Management. Saya perhatikan Anda tidak mengatakan apakah Anda ingin melakukan ini dari Windows (desktop) atau aplikasi Web. Untuk menggunakan Sql Server Management untuk membuat login (atau melakukan "manajemen"), kode harus dijalankan dengan hak istimewa yang lebih tinggi - katakanlah akun lokal atau domain dengan hak yang cukup untuk mengelola instance server SQL.
Anda perlu menambahkan referensi ke (Anda bisa menggunakan versi 9.0 dari majelis):
Microsoft.SqlServer.ConnectionInfo
Microsoft.SqlServer.Smo
Microsoft.SqlServer.SqlEnum
Dengan itu, kode berikut sudah cukup untuk membuat login SQL dan juga menambahkan pengguna ke database target Anda
var serverName = "."; // Your SQL Server Instance name
var databaseName = "Test"; // Your database name
var loginName = "testuserY"; // Your login name (should not exist - or you should add code to check if the login exists)
Server svr = new Server(serverName);
var db = svr.Databases[databaseName];
if (db != null)
{
// You probably want to create a login and add as a user to your database
Login login = new Login(svr, loginName);
login.DefaultDatabase = "master"; // Logins typically have master as default database
login.LoginType = LoginType.SqlLogin;
login.Create("foobar", LoginCreateOptions.None); // Enter a suitable password
login.Enable();
User user = new User(db, loginName);
user.UserType = UserType.SqlLogin;
user.Login = login.Name;
user.Create();
// add a role
user.AddToRole("db_owner");
}
Anda perlu menambahkan:
using Microsoft.SqlServer.Management.Smo;
Anda bisa menambahkan blok try{} catch{} dan kode pipa agar lebih kuat sehingga Anda akan pulih dengan baik jika terjadi kegagalan