Название: Работа с битовыми полями Отправлено: Примерный ученик от Октябрь 28, 2009, 15:34 Нужно хранить и передавать длинные битовые поля
(например, архив из файлов) Как организовать запись в таблицу из QByteArray и чтение из нее в QByteArray Код: msgdata bit varying(4096) ??? QT 3.3.3 PostgreSQL Название: Re: Работа с битовыми полями Отправлено: BaltikS от Октябрь 28, 2009, 18:00 Элементарно.... Как и записываются остальные поля... В 3-ке в разделе SQL даже был кажется консольный пример записи и чтения.
Код
Название: Re: Работа с битовыми полями Отправлено: Примерный ученик от Октябрь 28, 2009, 18:07 т.е. о длине QByteArray можно не заботится?
Если помешается, то запишет, а если нет, то обрежет? Название: Re: Работа с битовыми полями Отправлено: BaltikS от Октябрь 28, 2009, 18:13 Насколько я помню тип bytea postgresql - безразмерный. Возможно ограничение по размеру стоит в драйвере или в самих настройках postgresql, но могу на 99 % гарантировать файл в 30 метров записывается на ура.
Название: Re: Работа с битовыми полями Отправлено: Примерный ученик от Ноябрь 01, 2009, 14:18 Просветите, пожалуйста, в PostgreSQL
bit varying имеется ввиду последовательность битов или байтов? Название: Re: Работа с битовыми полями Отправлено: BaltikS от Ноябрь 01, 2009, 14:40 используй тип bytea... я же писал выше...
Название: Re: Работа с битовыми полями Отправлено: Примерный ученик от Ноябрь 01, 2009, 15:16 Я имею ввиду, как рассчитывать размер поля в БД?
Как биты или как байты? Название: Re: Работа с битовыми полями Отправлено: Примерный ученик от Ноябрь 02, 2009, 14:07 Максимальный размер 83886080
Только, что это биты или байты? Кто знает, подскажите, плииз ??? Название: Re: Работа с битовыми полями Отправлено: BaltikS от Ноябрь 02, 2009, 17:36 Максимальный размер 83886080 Вот описания типа bytea http://www.postgresql.org/docs/8.4/static/datatype-binary.htmlТолько, что это биты или байты? Кто знает, подскажите, плииз ??? По Вашим заданным вопросам не понятно, чего Вы хотите? 1) Ну откуда нам знать чего это 83886080? Наверное 83886080 попугаев. 2) Зачем рассчитывать размер поля в БД? 3) Если Вы хотите записать файл, используете тип bytea. Он автоматом разместит сколько требуется в памяти. 4) Записывается как? Я уже писал выше... Название: Re: Работа с битовыми полями Отправлено: Примерный ученик от Ноябрь 02, 2009, 18:50 В БД
Код: CREATE TABLE inda пришу Код: QByteArray ba(10); не пишет ??? Название: Re: Работа с битовыми полями Отправлено: Примерный ученик от Ноябрь 02, 2009, 19:03 В логе PostgreSQL
Код: 2009-11-02 19:03:01 ERROR: "\" is not a valid binary digit Название: Re: Работа с битовыми полями Отправлено: Примерный ученик от Ноябрь 02, 2009, 19:17 BaltikS, извини, тормозну. С полем типа
Код: bytea все проходит. Я его просто не нашел среди типов данных PostgreSQL 7.4.1 >:( Букварь Уорсли, Дрейк PostgreSQL для профессионалов Название: Re: Работа с битовыми полями Отправлено: BaltikS от Ноябрь 02, 2009, 20:26 Я его просто не нашел среди типов данных PostgreSQL 7.4.1 Да, возможно, в 7 версии он назывался по-другому... Можно было просто указать тип BLOB и он его захавал...Букварь Уорсли, Дрейк PostgreSQL для профессионалов |