Подземелье Кода

1-ое апреля 2007

Wahoo! Я сделал его! Последняя часть WP-DB.PHP для межбазового/Firebird

Сохранено вниз: Делфи для PHP, Firebird, межбазового - 9:10 pm Брайан @

Я знал 9 лет опыта IB/FB придут в сподручное.

wp-db миниый слой абстракции базы данных для WordPress. Он позволяет вам побежать WordPress на различной базе данных. Теперь MySQL мило много оно, но некоторые люди делали версию PostgreSQL также. 

Наилучшим образом, я хотел его подключить к межбазовому db для преобразования блога .TEXT я делал.  Я не иду побежать WordPress межбазового пока, но он упростил ввоз для меня для использования WP-DB для моего соединения ввоза базы данных.

Интересно заметить что я приходил к пункту где другие редакторы что я использовал для Кода PHP как раз не будут чувствовать правыми больше. Делфи для PHP как раз чувствует более лучшим теперь для редактировать.  Я не делал вс визуально конструировать в ем, но это было все еще славным быстрым редактором с дополнительной помощью намеков и параметров.  Возможно если я имел Zend, то, я вставил бы с тем для non визуально вещества, если я был использован к ему, то я не знаю.  Я не имею его.  Я пробовал его раз и считал его слишком громоздким для моих потребностей.  D4PHP при все закрынные коробки конструкции, все еще чувствует свет и имеет быстрое открытое время.

В лубом случае, большое часть из преобразования была довольно легко. Я как раз должен заменить звоноки php ibase_ для звоноков mysql_.  Я должен добавить меньшюю ыборку для регулировать пустых шнуров и цитат и некоторые сдержанно слова IB как тип, роль, пароль, и etc. но действительно проблема была что WordPress полагается тяжело на характеристике InsertID которую много баз данных имеют.  Она возвращает последнее значение поля autoinc в таблице снабженной ссылками последней командой вставки.  IB/FB не имеет никакое equivelent.  Документация PHP не показала что любое разрешение было обеспечено. И все слои abstration базы данных вне там не поддерживают его также.

Так, я делал работу вокруг.  Она нет по возможности 100% точного для всех конфигураций баз данных вне там, но она должна работать для WordPress и .TEXT. 

См., выходка был найти основной ключ для таблицы вы работаете дальше.  Так, сперва я должен найти какая таблица я работал.  Я имел заявление ВСТАВКИ SQL, поэтому все I необходимо для того чтобы сделать было найти имя таблицы после того как слова «ВСТАВКА В «.  Отлично.  Пук путей сделать то.

Затем, подготовлено с именем таблицы, я должен найти основной ключ.  Как я делаю то с как раз командами имеющимися к PHP?  То была каверзной частью. 

Удачливейше, IB/FB реляционная база данных.  Что вкратце значит таблицы все храньте в битах и частях повсеместно в таблица базы данных и после этого соединяйте назад совместно согласно данным по структуры, котор хранят в «спрятанных» таблицах.

Длиннее и короткая его что это заявление передаст вы что необходимо:

SQL:
  1. ВЫБЕРИТЕ RDB$RELATION_CONSTRAINTS.RDB$RELATION_NAME, RDB$INDEX_SEGMENTS.RDB$FIELD_NAME, RDB$INDEX_SEGMENTS.RDB$FIELD_POSITION
  2. ОТ RDB$RELATION_CONSTRAINTS, RDB$INDEX_SEGMENTS
  3. ГДЕ
  4. RDB$RELATION_CONSTRAINTS.RDB$CONSTRAINT_TYPE = `ОСНОВНОЕ KEY И
  5. RDB$INDEX_SEGMENTS.RDB$INDEX_NAME=RDB$RELATION_CONSTRAINTS.RDB$INDEX_NAME
  6. ЗАКАЗ RDB$RELATION_CONSTRAINTS.RDB$RELATION_NAME, RDB$INDEX_SEGMENTS.RDB$FIELD_POSITION

В WordPress и .TEXT каждое поле AutoInc я посмотрел было первым полем в таблице.  Так, теперь подготовлено с именем таблицы, и полем autoinc, просто вопрос для того чтобы получить самое высокое значение, которое должно быть самой недавней вставкой если нет некоторого вида развращения.

Так, что будет как раз отборное Макс (fieldname) от заявления tablename и я возвращаю значение я находил в поле одном (регулируя пустой результат установленный конечно). 

 Hey - он не мил, но он должен работать 100% из времени для моих польз.  Если он делает, то я представлю его к ADOdb и увижу что они думают.  В виду того что ADOdb часть сердечника Делфи для проекта PHP, я мог получить мой маленький бит Кода включено!  Фактически, я надеюсь внести вклад в VCL для PHP прежде после этого.

 О'КЕЙ, каждое eyes застекляло над но оно все еще довольно холодные честные!

Приведено в действие WordPress