Я разрабатываю систему управления отелями для своей проектной лекции в университете. Я прошу вас помочь мне исправить код, который я вставил ниже. Я не понимаю, почему это не перенос и сохранение входов, которые я вводил в программу в Visual Studio Express. Это код:Сохранение входных данных программы в базу данных
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
namespace WindowsFormsApplication2
{
class Database
{
SqlConnection con;
public Database()
{
con = new SqlConnection("server=.,database=Guest; Integrated Security = True");
}
public bool AddGuest(string ID, string Phone, string Adress, string FName, string LName, string Email, string RoomNo)
{
bool durum = false;
SqlCommand cmd = new SqlCommand(@"declare @guest_id nvarchar(50),@guest_phone nvarchar(50),@guest_adress ntext,@guest_fname ntext,@guest_lname ntext,@guest_email ntext,@room_no int = @room_no;
select @guest_id = Guest.guest_id from Guest where Guest.room_no = '103';
select @guest_phone = Guest.guest_phone from Guest where Guest.room_no = '103';
select @guest_adress = Guest.guest_adress from Guest where Guest.room_no = '103';
select @guest_fname = Guest.guest_fname from Guest where Guest.room_no = '103';
select @guest_lname = Guest.guest_lname from Guest where Guest.room_no = '103';
select @guest_email = Guest.guest_email from Guest where Guest.room_no = '103';
insert into Guest(guest_id,guest_phone,guest_adress,guest_fname,guest_lname,guest_email,room_no)values(@guest_id,@guest_adress,@guest_fname,@guest_lname,@guest_email,@room_no)
)", con);
cmd.Parameters.AddWithValue("@id", ID);
cmd.Parameters.AddWithValue("@phone", Phone);
cmd.Parameters.AddWithValue("@adress", Adress);
cmd.Parameters.AddWithValue("@fname", FName);
cmd.Parameters.AddWithValue("@lname", LName);
cmd.Parameters.AddWithValue("@email", Email);
cmd.Parameters.AddWithValue("@room_no", RoomNo);
con.Open();
try
{
cmd.ExecuteNonQuery();
durum = true;
}
catch (Exception)
{
}
con.Close();
return durum;
}
private void ekle_Click(object sender, EventArgs e)
{
}
}
}
Например, как вы видите на картинке, я вхожу в гостевой идентификатор, имя, фамилию, то я хочу, чтобы они были сохранены в база данных. Я подключил базу данных визуальным и создал код в соответствии с ним. Но все равно не работает.
Вы строка соединения должна быть либо сервер =. \ SQLExpress или. \ SQLStandard. Я бы использовал SQL Server Management Studio (SSMS), который поставляется с SQL Server для устранения проблем. Вы можете запросить базу данных, чтобы проверить, были ли данные добавлены. Имя сервера в строке подключения должно совпадать с именем входа в систему SSMS. Вы можете писать в неправильную базу данных, чтобы проверить все базы данных в SSMS-проводнике. – jdweng
есть только одна база данных, и я также использую SQL Server Management Studio 2014. Это скриншот экрана входа в мою базу данных: http://i.hizliresim.com/MoayGg.png И это один из внутренних снимков экрана: http://i.hizliresim.com/DByRbv.png –
Ваша строка подключения должна быть либо server =, \ cembilal, либо server = CEM-BILAL \ cembilal. «cembilal» - это экземпляр базы данных. Имя вашей базы данных также неверно, должно быть hocu (не гость). Обычно я в своем SQL-заявлении ставил «Использовать hocu» в начале запроса для выбора правильной базы данных. Или добавьте имя базы данных в строку подключения. Вы не указываете hocu, которые заставляют меня думать, что вы пишете другой экземпляр SQL Server. Экземпляром SQL Server в вашем случае является cembilal. Я подозреваю, что у вас есть два экземпляра SQL Server, установленных на вашем ПК. – jdweng