как вставить значение в таблицу типов данных изображения
Я использую Sql-Server 2012. В нем я создал столбец с изображением с изображением datatype в таблице Person. Пожалуйста, объясните, как я могу добавить в нее ценность? Я имею в виду, должен ли я определять путь к любой фотографии? или есть ли другой способ вставить изображения в этот столбец? Ждем вашего руководства
Person – имя таблицы имя_пользователя – имя столбца с типом данных nvarchar (50) изображение – имя столбца с изображением datatype Date – имя столбца с датой данных
Или вставка похожа: `
- Как запретить другим приложениям подключаться к SQL Server?
- SQL Server - та же таблица в нескольких схемах
- Как выбрать все даты с 2002 по 2013 год в Microsoft Sql Server 2012
- Как просмотреть запрос, который использовался для создания таблицы?
- Получить размер вставленной строки в SQL Server
INSERT INTO Person Values ( 'Person34', ' SELECT * FROM OPENROWSET ( BULK 'C:\Users\Public\Pictures\Sample Pictures\Lighthouse.jpg',SINGLE_CLOB)' , '2013-09-08');
` Спасибо.
- Создание соединения с MDF-файлом в Visual Studio: «Файл используется»
- Последовательность SQL Server 2012
- Есть ли способ генерировать миллионные адреса mac более эффективно?
- Перечислите все рабочие даты между двумя датами в SQL
- Как получить значения за все месяцы в T-SQL
- Экземпляр по умолчанию для SQL Server 2012 не работает
- Как предотвратить «истечение тайм-аута запроса»? (Ошибка SQLNCLI11 '80040e31')
- Функция SQL не возвращает результатов, но содержимое функции возвращает результаты
так я делаю это, чтобы сохранить изображение внутри поля BLOB / Image DB.
/// <summary> /// Saves the file into a BLOB/Image field in the DB /// This uses an UPDATE command, therefore the record must alreay exist in the DB /// </summary> /// <param name="aTableName"></param> /// <param name="aFieldName"></param> /// <param name="aWhereClause"></param> /// <param name="aFileName"></param> /// <returns></returns> public bool SaveToBLOB(string aTableName, string aFieldName, string aWhereClause, string aFileName) { string sSQL = string.Format("UPDATE {0} SET {1}[email protected]{1} WHERE {2}", aTableName, aFieldName, aWhereClause); using (SqlCommand oComm = new SqlCommand(sSQL, m_Conn)) { byte[] wFileAsByteArr = CDBConn.GetFileAsByteArray(aFileName); oComm.Parameters.Add("@" + aFieldName, SqlDbType.Image, wFileAsByteArr.Length).Value = wFileAsByteArr; return oComm.ExecuteNonQuery() > 0; } }
И вот как я его извлекаю: /// /// извлекаем первое поле (BLOB) указанной команды SQL и сохраняем его как файл /// /// /// /// true, если файл был создан и false иначе public bool ExtractBLOB (строка aSQLCommand, строка aFileName) {using (SqlCommand oComm = CreateCommand ()) {oComm.CommandText = aSQLCommand; oComm.CommandType = CommandType.Text;
// Create a file to hold the output. using (System.IO.FileStream fs = new System.IO.FileStream(aFileName, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write)) { using (System.IO.BinaryWriter bw = new System.IO.BinaryWriter(fs)) { byte[] b = (byte[])oComm.ExecuteScalar(); if (b != null) { bw.Write(b); bw.Flush(); return true; } else return false; } } } }
Где aSQLCommand будет: SELECT MyImageField FROM TableABC WHERE …