SAVEPOINT exception with Rails

阅读更多

 

ActiveRecord::StatementInvalid:
SQLite3::SQLException: near "SAVEPOINT": syntax error: SAVEPOINT active_record_1

 这个错误折腾了近一天。

 

解决方法:

http://stackoverflow.com/questions/7367274/rails-3-1-app-cant-install-sqlite3-gem-because-libraries-are-out-of-date

 

1. 先下载sqlite3.7

 

mkdir $HOME/sqlite3.7.7.1
cd $HOME/sqlite3.7.7.1
wget http://www.sqlite.org/sqlite-autoconf-3070701.tar.gz
tar -zxvf sqlite-autoconf-3070701.tar.gz
cd sqlite-autoconf-3070701

 2.配置安装sqlite3.7

 

./configure --disable-shared --enable-static --prefix=$HOME/sqlite3.7.7.1
make && make install

 3 安装sqlite3 gem

 

gem install sqlite3 -- --with-sqlite3-dir=$HOME/sqlite3.7.7.1

 中间的--必须要。

 

个人感觉出现这个错误的原因是sqlite的版本问题,在3.7版本之前是不支持SAVEPOINT的(网上资料)。

你可能感兴趣的:(railse)