2014-03-14 5 views
0

В моем проекте litte у меня есть два списка и два db. Первое представление списка заполняется из первой таблицы базы данных. вторая заполняется из первого выбранного элемента.Как перенести данные из списка и вставить в базу данных?

Эти два ListBoxes построены в таком же режиме:

`name | surname | id`. 

В первом ListBox У меня есть список всех пользователей вставить в БД

`Ale | Zucchelli | 5` 
`Faby | Jake | 6` 
`Alexa | Doctor | 7` 
`Mattias | Rossi | 12` 

Когда я выбираю элемент клику на кнопке перемещения элемент выбора переместится во второй список.

second listbox items 

`Ale | Zucchelli | 5` 
`Mattias | Rossi | 12` 

При нажатии на кнопку Insert, элементы второго ListBox я должен отправить его на второй таблицы моей БД, но я должен зарегистрировать только идентификатор.

У меня попробовать этот код:

частный недействительным btmconferma_Click (объект отправителя, EventArgs е) {

string idutente; 
    //string idu_retrive = string.Empty; 
    //object value = 0; 
    idutente = user.Text; 

    //string querysql2 = " INSERT INTO AMICIZIA (IdUtente1, [idamici]) VALUES ('" + idutente + "', '" + value + "')"; 
    //SqlConnection myconn = new SqlConnection(CnnStr); 
    //SqlCommand mycmd = new SqlCommand(querysql2, myconn); 
    foreach (ListViewItem l in listamicizie.Items) 
    { 
     string CnnStr = System.Configuration.ConfigurationSettings.AppSettings["CnnStr"].ToString(); 
     SqlConnection myconn = new SqlConnection(CnnStr); 
     myconn.Open(); 
     SqlCommand cmd = new SqlCommand("insert into AMICIZIA (IdUtente1) values('" + idutente + "')", myconn); 
     //SqlCommand cmd1 = new SqlCommand("insert into AMICIZIA (idamici) values('" + l.SubItems["IdUtente"].ToString() + "')", myconn); 
     SqlCommand cmd1 = new SqlCommand("insert into AMICIZIA (idamici) values('" + listamicizie.Columns["IdUtente"].Text + "')", myconn); 


     cmd.ExecuteNonQuery(); 
     cmd1.ExecuteNonQuery(); 
     myconn.Close(); 
    } 


    this.Close(); 
} 

Значение IdUtente является правильным, но величина idamici всегда равна нулю. Как это я?

+0

Попробуйте что-нибудь и опубликуйте результаты, прежде чем спрашивать. –

+0

Я опубликовал свой код, и мой результат – AleZucchelli

ответ

0

Ваш SQl должен выглядеть следующим образом:

SqlCommand cmd = new SqlCommand("insert into AMICIZIA (IdUtente1) values('" + l.Text; + "')", myconn); 

ListViewItem l является фактическое значение в цикле вы создали.

+0

Код работает. Последний вопрос, что я делаю, чтобы взять только значение столбца id? – AleZucchelli

+0

Объясните, что вы имеете в виду, пожалуйста. Правильный вопрос поможет вам это понять. Какова структура вашей таблицы? Вы хотите вставить только часть «12» из текстовой строки «Mattias | Rossi | 12» и тому подобное? –

+0

Извините за объяснение, но я не очень хорошо знаю английский. Моя структура структуры db id IdUtente и Idamici. В Idamici я хочу вставить только третье значение listview, в случае Mattias Rossi, в столбце Idamici db появляется только 12 – AleZucchelli

Смежные вопросы