Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.15;
Скачать: CL | DM;

Вниз

Как записать в базу данных строку содержащую символ (   Найти похожие ветки 

 
AFROLOV ©   (2002-06-18 14:04) [0]

Как записать в базу данных строку содержащую символ (")
Заранее спасибо.


 
Дмитрий Баранов ©   (2002-06-18 14:10) [1]

Заэкранировать.
\"


 
AFROLOV ©   (2002-06-18 14:16) [2]

Что то не работает и потом символ ".


 
hooch   (2002-06-18 14:19) [3]

надо написать """"""


 
Дмитрий Баранов ©   (2002-06-18 14:21) [4]

MSSQL (
==============================
CREATE TABLE [test] (
[id] [int] IDENTITY (1, 1) NOT NULL ,
[txt] [char] (10) COLLATE Cyrillic_General_CI_AS NULL
) ON [PRIMARY]
===============================
insert into test values (""");
===============================
Вуаля %)


 
Дмитрий Баранов ©   (2002-06-18 14:23) [5]

Блин, ты компонентом вставляешь, что ли? :)


 
AFROLOV ©   (2002-06-18 14:25) [6]

To hooch (18.06.02 14:19) так тоже работать не хочет.


 
hooch   (2002-06-18 14:26) [7]

ты чем вставляеш ??? :-)


 
AFROLOV ©   (2002-06-18 14:26) [8]

Дмитрий Баранов © (18.06.02 14:23)
Да через ADOQuery.


 
roottim   (2002-06-18 14:27) [9]

да сделай параметрический запрос
insert into MyTable values(myid,:p1)


 
AFROLOV ©   (2002-06-18 14:33) [10]

А если непараметрический то тогда как?


 
Дмитрий Баранов ©   (2002-06-18 14:40) [11]

Дай код... Ручаюсь, все должно вставляться без проблем, хоть ты строку на сервер гонишь, хоть FieldByName...AsString.


 
AFROLOV ©   (2002-06-18 14:46) [12]

Если двойных кавычек в строчкенет то все работает без проблем.
SQLStr:="Update TDocFilVal Set Val=""+FieldInfo.ShortVal+",UserId="+UserIdStr+" where DocFilValId="+IntToStr(RecId)+";";
ADOQuery.SQL.Clear();
ADOQuery.SQL.Add(SQLStr);
ADOQuery.ExecSQL();


 
Дмитрий Баранов ©   (2002-06-18 14:59) [13]

SQL = "Update TDocFilVal Set Val="""+FieldInfo.ShortVal+""",UserId="""+UserIdStr+""" where DocFilValId="""+IntToStr(RecId)+"""";

Во-первых, все строковые значения в SQL кавычатся одинарными кавычками, во-вторых, в таких случаях лучше пользоваться функцией format, чтобы в оных кавычках не пропасть.


 
AFROLOV ©   (2002-06-18 17:08) [14]

А поподробнее можно, а то что-то не получается.


 
Дмитрий Баранов ©   (2002-06-18 17:39) [15]

var x: string;
const SQL = "insert into %s values(""%s"", ""%s"", ""%s"", %d)";

x:=""ccc"";
cnn.Execute(Format(SQL, [
"test",
"a"a"a",
"bbb",
x,
1000
])
);




 
Дмитрий Баранов ©   (2002-06-18 17:42) [16]

( ""%s"", ""%s"", ""%s"",
В этом куске все кавычки - одинарные.


 
Johnny Smith ©   (2002-06-18 17:47) [17]

Можно как CHR(39), например
MyString:="asdf"+CHR(39);
Получится:
asdf"



Страницы: 1 вся ветка

Текущий архив: 2002.07.15;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.022 c
14-47709
var
2002-06-19 06:24
2002.07.15
CPOЧHO!!!


4-47870
Иван
2002-05-13 01:53
2002.07.15
WM_ACTIVATE


3-47203
VikOs
2002-06-19 18:13
2002.07.15
Query


4-47871
Wizard_Ex
2002-05-10 12:33
2002.07.15
Немодальная форма и DLL =>


1-47494
Evants
2002-07-04 10:36
2002.07.15
Снова ТListBox (избегание ошибки)