Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# и базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Vudosar
0 / 0 / 1
Регистрация: 19.06.2017
Сообщений: 2
#1

Ошибка "Keyword not supported. Имя параметра: integrated security" - C#/MySQL

19.06.2017, 23:01. Просмотров 188. Ответов 2
Метки нет (Все метки)

Всем привет, столкнулся с проблемой такого типа
Keyword not supported. Имя параметра: integrated security
.
Возникла она при добавление данных в БД. Программу делал по данной статье http://www.vr-online.ru/content/c-uchimsja-rabotat-s-mysql-2858
вот сам код с Form1.cs:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data;
 
namespace Zaebalo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private string GetSQLString()
        {
            ///начинаем формировать запрос
            ///сначала подготавливаем общую информацию о выборке
            ///поля и таблицу для выборки
            string sSQL = "SELECT idTablePhoneBook,FM,IM,OT,Phone FROM TablePhoneBook WHERE FM<>'' ";
            ///если поле textBoxFamily не пустое,то делаем выборку по полю FM
            if (textBoxFamily.Text != "") sSQL += " AND FM LIKE '%" + textBoxFamily.Text + "%'";
            ///если поле textBoxName не пустое,то делаем выборку по полю IM
            if (textBoxName.Text != "") sSQL += " AND IM LIKE '%" + textBoxName.Text + "%'";
            ///если поле textBoxOt не пустое,то делаем выборку по полю OT
            if (textBoxOt.Text != "") sSQL += " AND OT LIKE '%" + textBoxOt.Text + "%'";
            ///если поле textBoxTel не пустое,то делаем выборку по полю Phone
            if (textBoxTel.Text != "") sSQL += " AND Phone LIKE '%" + textBoxTel.Text + "%'";
            ///делаем сотритровку по Фамилии
            sSQL += " ORDER BY FM";
            return sSQL;
        }
        private void SelectDataFromDB()
        {
            ///переменная,в которой содержится
            ///SQL-запрос на выборку
            String sSQL = GetSQLString();
            ///строка подключения к БД
            ///Database-название БД MySQL
            ///Data Source-IP-адрес или имя компа,
            ///на котором крутится MySQL
            ///User ID-имя пользователя для подключения
            ///Password-он и в Африке password
            String sConnectionString = @"Data Source=DESKTOP-0PS0NSQ\SQLEXPRESS;Initial Catalog=testDataSet;Integrated Security=True";
            ///в этой переменной будет содержаться рез-тат запроса
            MySqlLib.MySqlData.MySqlExecuteData.MyResultData result = new MySqlLib.MySqlData.MySqlExecuteData.MyResultData();
            ///выполняем запрос, который возвращает результат
            result = MySqlLib.MySqlData.MySqlExecuteData.SqlReturnDataset(sSQL, sConnectionString);
            ///если ошибок нет
            if (result.HasError == false)
            {
                ///очищаем таблицу для вывода результата
                dataGridView1.Columns.Clear();
                ///заполняем таблицу на основе данных запроса
                dataGridView1.DataSource = result.ResultData.DefaultView;
            }
            ///если есть ошибка
            else
            {
                ///показываем ее в MessageBox'е
                MessageBox.Show(result.ErrorText);
            }
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            // TODO: данная строка кода позволяет загрузить данные в таблицу "testDataSet.TablePhoneBook". При необходимости она может быть перемещена или удалена.
            this.tablePhoneBookTableAdapter.Fill(this.testDataSet.TablePhoneBook);
 
        }
 
        private void buttonAdd_Click(object sender, EventArgs e)
        {
            ///создаем объект формы добавления записи
            AddChangeForm2 addForm = new AddChangeForm2();
            ///т.к. мы СОЗДАЕМ,то св-во iIdRecord нулевое
            addForm.iIdRecord = 0;
            ///показываем форму в режиме диалога
            if (addForm.ShowDialog() == DialogResult.OK)
                ///если нажали ОК (именно для этого мы 
                ///и заполняли св-ва кнопок DialogResult),
                ///значит обновляем содержимое таблицы
                SelectDataFromDB();
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            ///если выделена не пустая ячейка
            if (dataGridView1.CurrentCell != null && dataGridView1.CurrentCell.ColumnIndex == 0)
            {
               ///создаем объект формы добавления записи
            AddChangeForm2 addForm = new AddChangeForm2();
           ///т.к. мы ОБНОВЛЯЕМ,то заполняем св-во iIdRecord
         addForm.iIdRecord = Convert.ToInt32(dataGridView1.CurrentCell.Value);
         ///показываем форму в режиме диалога
          if (addForm.ShowDialog() == DialogResult.OK)
          ///если нажали ОК (именно для этого мы 
          ///и заполняли св-ва кнопок DialogResult),
          ///значит обновляем содержимое таблицы
                 SelectDataFromDB();
           }
        }
 
        private void buttonDel_Click(object sender, EventArgs e)
        {
            
         ///если выделена не пустая ячейка
          if (dataGridView1.CurrentCell != null && dataGridView1.CurrentCell.ColumnIndex==0)
           {
           if (MessageBox.Show("Вы уверены,что хотите удалить запись под № " + dataGridView1.CurrentCell.Value.ToString(),
          "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.OK)
            {
            ///формируем строку подключения к MySQL
                String sConnectionString = @"Data Source=DESKTOP-0PS0NSQ\SQLEXPRESS;Initial Catalog=testDataSet;Integrated Security=True";
            ///выполняем SQL-запрос
           MySqlLib.MySqlData.MySqlExecute.SqlNoneQuery("DELETE FROM TablePhoneBook WHERE idTablePhoneBook=" + dataGridView1.CurrentCell.Value.ToString(), sConnectionString);
            SelectDataFromDB();
 
              }
           }
        }
 
  
    }
}
Это с Form2.cs:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Zaebalo
{
public partial class AddChangeForm2 : Form
{
public Int32 iIdRecord { get; set; }
public AddChangeForm2()
{
InitializeComponent();
}
private string GetInsertSQL()
{
string sSQL = "INSERT INTO TablePhoneBook (FM,IM,OT,Phone) VALUES (";
sSQL += "'" + textBoxFamily.Text + "',";
sSQL += "'" + textBoxName.Text + "',";
sSQL += "'" + textBoxOt.Text + "',";
sSQL += "'" + textBoxTel.Text + "')";
return sSQL;
}
private string GetUpdateSQL()
{
StringBuilder sSQL = new StringBuilder("UPDATE TablePhoneBook SET ");
sSQL.Append("FM='").Append(textBoxFamily.Text).Append("',");
sSQL.Append("IM='").Append(textBoxName.Text).Append("',");
sSQL.Append("OT='").Append(textBoxOt.Text).Append("',");
sSQL.Append("Phone='").Append(textBoxTel.Text).Append("'");
sSQL.Append(" WHERE idTablePhoneBook=").Append(iIdRecord.ToString());
return sSQL.ToString();
}
private void buttonOK_Click(object sender, EventArgs e)
{
string sSQL = "";
///формируем строку подключения к MySQL
String sConnectionString = @"Data Source=DESKTOP-0PS0NSQ\SQLEXPRESS;Initial Catalog=testDataSet;Integrated Security=True";
///если поле iIdRecord равно 0,
///значит добавляем запись
if (iIdRecord == Innocent
///формируем запрос на добавление
sSQL = GetInsertSQL();
else
///иначе редактируем
///и формируем запрос на редактирование
sSQL = GetUpdateSQL();
///выполняем SQL-запрос
MySqlLib.MySqlData.MySqlExecute.SqlNoneQuery(sSQL, sConnectionString);
}
 
}
}
Еще в задании говорилось добавить MySql.Data.dll и MySqlData.cs код MySqlData.cs вот:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data;
using System.Data;
 
namespace MySqlLib
{
    /// <summary>
    /// Набор компонент для простой работы с MySQL базой данных.
    /// </summary>
    public class MySqlData
    {
 
        /// <summary>
        /// Методы реализующие выполнение запросов с возвращением одного параметра либо без параметров вовсе.
        /// </summary>
        public class MySqlExecute
        {
 
            /// <summary>
            /// Возвращаемый набор данных.
            /// </summary>
            public class MyResult
            {
                /// <summary>
                /// Возвращает результат запроса.
                /// </summary>
                public string ResultText;
                /// <summary>
                /// Возвращает True - если произошла ошибка.
                /// </summary>
                public string ErrorText;
                /// <summary>
                /// Возвращает текст ошибки.
                /// </summary>
                public bool HasError;
            }
 
            /// <summary>
            /// Для выполнения запросов к MySQL с возвращением 1 параметра.
            /// </summary>
            /// <param name="sql">Текст запроса к базе данных</param>
            /// <param name="connection">Строка подключения к базе данных</param>
            /// <returns>Возвращает значение при успешном выполнении запроса, текст ошибки - при ошибке.</returns>
            public static MyResult SqlScalar(string sql, string connection)
            {
                MyResult result = new MyResult();
                try
                {
                    MySql.Data.MySqlClient.MySqlConnection connRC = new MySql.Data.MySqlClient.MySqlConnection(connection);
                    MySql.Data.MySqlClient.MySqlCommand commRC = new MySql.Data.MySqlClient.MySqlCommand(sql, connRC);
                    connRC.Open();
                    try
                    {
                        result.ResultText = commRC.ExecuteScalar().ToString();
                        result.HasError = false;
                    }
                    catch (Exception ex)
                    {
                        result.ErrorText = ex.Message;
                        result.HasError = true;
                    }
                    connRC.Close();
                }
                catch (Exception ex)//Этот эксепшн на случай отсутствия соединения с сервером.
                {
                    result.ErrorText = ex.Message;
                    result.HasError = true;
                }
                return result;
            }
 
 
            /// <summary>
            /// Для выполнения запросов к MySQL без возвращения параметров.
            /// </summary>
            /// <param name="sql">Текст запроса к базе данных</param>
            /// <param name="connection">Строка подключения к базе данных</param>
            /// <returns>Возвращает True - ошибка или False - выполнено успешно.</returns>
            public static MyResult SqlNoneQuery(string sql, string connection)
            {
                MyResult result = new MyResult();
                try
                {
                    MySql.Data.MySqlClient.MySqlConnection connRC = new MySql.Data.MySqlClient.MySqlConnection(connection);
                    MySql.Data.MySqlClient.MySqlCommand commRC = new MySql.Data.MySqlClient.MySqlCommand(sql, connRC);
                    connRC.Open();
                    try
                    {
                        commRC.ExecuteNonQuery();
                        result.HasError = false;
                    }
                    catch (Exception ex)
                    {
                        result.ErrorText = ex.Message;
                        result.HasError = true; 
                    }
                    connRC.Close();
                }
                catch (Exception ex)//Этот эксепшн на случай отсутствия соединения с сервером.
                {
                    result.ErrorText = ex.Message;
                    result.HasError = true;
                }
                return result;
            }
             
        }
 
        /// <summary>
        /// Методы реализующие выполнение запросов с возвращением набора данных.
        /// </summary>
        public class MySqlExecuteData
        {
            /// <summary>
            /// Возвращаемый набор данных.
            /// </summary>
            public class MyResultData
            {
                /// <summary>
                /// Возвращает результат запроса.
                /// </summary>
                public DataTable ResultData;
                /// <summary>
                /// Возвращает True - если произошла ошибка.
                /// </summary>
                public string ErrorText;
                /// <summary>
                /// Возвращает текст ошибки.
                /// </summary>
                public bool HasError;
            }
 
 
            /// <summary>
            /// Выполняет запрос выборки набора строк.
            /// </summary>
            /// <param name="sql">Текст запроса к базе данных</param>
            /// <param name="connection">Строка подключения к базе данных</param>
            /// <returns>Возвращает набор строк в DataSet.</returns>
            public static MyResultData SqlReturnDataset(string sql, string connection)
            {
                MyResultData result = new MyResultData();
                try
                {
                    MySql.Data.MySqlClient.MySqlConnection connRC = new MySql.Data.MySqlClient.MySqlConnection(connection);
                    MySql.Data.MySqlClient.MySqlCommand commRC = new MySql.Data.MySqlClient.MySqlCommand(sql, connRC);
                    connRC.Open();
 
                    try
                    {
                        MySql.Data.MySqlClient.MySqlDataAdapter AdapterP = new MySql.Data.MySqlClient.MySqlDataAdapter();
                        AdapterP.SelectCommand = commRC;
                        DataSet ds1 = new DataSet();
                        AdapterP.Fill(ds1);
                        result.ResultData = ds1.Tables[0];
                    }
                    catch (Exception ex)
                    {
                        result.HasError = true;
                        result.ErrorText = ex.Message;
                    }
                    connRC.Close();
                }
                catch (Exception ex)//Этот эксепшн на случай отсутствия соединения с сервером.
                {
                    result.ErrorText = ex.Message;
                    result.HasError = true;
                }
            
                return result;
 
            }
 
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2017, 23:01
Я подобрал для вас темы с готовыми решениями и ответами на вопрос MySQL Ошибка "Keyword not supported. Имя параметра: integrated security" (C#):

При подключение к БД ошибка "Ключевое слово не поддерживается: "integrated security"
Добрый день! Помогите найти ошибку Неподдерживаемое ключевое слово: &quot;integrated security&quot;. Описание: Необработанное исключение при...

Подключение к БД. Ошибка "Keyword not supported: 'port'"
Подскажите пожалуйста, что не так!!! от код public DataSet GetUserTable() { string constr = @&quot;server=192.168.105.203;...

Ошибка при обновлении данных "Значение не может быть неопределенным. Имя параметра: dataTable"
Задача такая. Открывыаешь окно, из БД берутся соответствующие данные. Вручную модифицируются и при закрытии формы обновляются. ...

Ошибка в запросе "Command contains unrecognized phrase/keyword"
Вот подключение string pth = System.IO.Path.GetDirectoryName(Application.ExecutablePath); OleDbConnection conn = new...

ADO.NET ошибка "Specified method is not supported"
public void Read() { string strSQL = &quot;Select * From Patients&quot;; Dictionary&lt;int,Patient&gt; myList = new...

"Имя типа "loadDataSetTableAdapters" отсутствует в типе "Kurs.Kurs" В чём ошибка?
В чём может быть ошибка?

2
Vudosar
0 / 0 / 1
Регистрация: 19.06.2017
Сообщений: 2
19.06.2017, 23:03  [ТС] #2
Вот скрины Form если кому нужно
0
Миниатюры
Ошибка "Keyword not supported. Имя параметра: integrated security"   Ошибка "Keyword not supported. Имя параметра: integrated security"  
pincet
1301 / 888 / 120
Регистрация: 23.07.2010
Сообщений: 4,805
20.06.2017, 08:48 #3
Цитата Сообщение от Vudosar Посмотреть сообщение
String sConnectionString = @"Data Source=DESKTOP-0PS0NSQ\SQLEXPRESS;Initial Catalog=testDataSet;Integrated Security=True";
каким боком строка подключения для MS SQL к MySQL?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2017, 08:48
Привет! Вот еще темы с решениями:

Ошибка 78 Имя типа или пространства имен "Data" отсутствует в пространстве имен "FirebirdSQL"
Ошибка 78 Имя типа или пространства имен &quot;Data&quot; отсутствует в пространстве имен &quot;FirebirdSql&quot; (пропущена ссылка на...

Можно ли во время выполнения "извлечь" имя приложения, имя класса, имя исполняемого метода и пр. ?
или какие-нубдь &quot;квазипеременные&quot; компилятора, позволяющие их использовать?

"Incorrect syntax near the keyword 'Table'."
здравствуйте! задача сделать бд с добавлением, обновлением, удалением, поиском и команды написаны, но с кучей ошибок одна из них:...

Подключение к Access 2007 и ошибка "Недопустимое имя файла"
Здравствуйте .. Впервые подключаюсь из C# в ACCESS 2007 и возникает ошибка: Недопустимое имя файла .. показывается строка -...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru