草庐IT

varchar_number

全部标签

php - "Invalid parameter number: parameter was not defined"插入数据

我使用Yii的主动记录模式已经有一段时间了。现在,我的项目需要为一笔小交易访问不同的数据库。我认为Yii的DAO会对此有好处。但是,我遇到了一个神秘的错误。CDbCommandfailedtoexecutetheSQLstatement:SQLSTATE[HY093]:Invalidparameternumber:parameterwasnotdefined这是我的代码:publicfunctionactionConfirmation{$model_person=newTempPerson();$model=$model_person->find('alias=:alias',arra

php - Laravel 与 SQL Server 2008 抛出 "Conversion of a varchar data type to a datetime data type resulted in an out-of-range value"

我在SQLServer2008中使用laravel4.1我创建了一个基于Eloquentorm的带有时间戳的模型:classAttendanceextends\Eloquent{protected$table='Attendance';publicfunctionusers(){return$this->belongsToMany('User','Users_Attendance','user_id','attendance_id');}}当我尝试插入新字段时:publicfunctionpostAttendanceUsers(){$attendance=newAttendance;$

php - 为什么 Eloquent(在 Laravel 中)将我的 varchar uuid 主键转换为整数导致错误?

跟进我昨晚的question,我睡了个好觉,并“发现”这是由于自动转换/类型转换或其他原因造成的。求和:模型使用uuid作为主键他们在从mySQL插入时通过触发器获取它们为了获取数据库运行时生成的uuid,我调用了$model_object->fresh();fresh()这在获取整个对象时有效,但在仅选择一个属性时无效型号Controller(搞砸的地方)publicfunctionstore(Request$request){$input=$request->all();$address=Address::create($input);var_dump($address);exit

MySQL VARCHAR(255) UTF8 对于 key 来说太长,但最大长度为 1000 字节

我知道对此有很多问题,但我认为我的数学是正确的。MySQL为每个UTF8字符保留3个字节。MyISAM允许长度为1000字节的key。我的UTF8VARCHAR(255)应该是255*3=765字节除非UNQUE每个条目需要额外的200+字节,否则为什么这不起作用?mysql>ALTERTABLEentryADDUNIQUEINDEX(name(255));ERROR1071(42000):Specifiedkeywastoolong;maxkeylengthis1000bytes对此我有什么办法吗?编辑:原来限制是250。对于唯一索引,字符似乎计为4个字节,但我不知道为什么。编辑2:

MySQL VARCHAR(255) UTF8 对于 key 来说太长,但最大长度为 1000 字节

我知道对此有很多问题,但我认为我的数学是正确的。MySQL为每个UTF8字符保留3个字节。MyISAM允许长度为1000字节的key。我的UTF8VARCHAR(255)应该是255*3=765字节除非UNQUE每个条目需要额外的200+字节,否则为什么这不起作用?mysql>ALTERTABLEentryADDUNIQUEINDEX(name(255));ERROR1071(42000):Specifiedkeywastoolong;maxkeylengthis1000bytes对此我有什么办法吗?编辑:原来限制是250。对于唯一索引,字符似乎计为4个字节,但我不知道为什么。编辑2:

php - 易于获取 : Identify all old version numbers of a package?

我需要在Debian上安装PHP5.3。如果我要执行PHP的常规安装,我将获得5.4版。我知道我可以运行apt-getinstall=安装特定版本。但我不知道PHP5.3的确切包版本号是多少。我跑了apt-cacheshowpkgphp5和apt-cachemadisonphp5但他们只列出当前版本。如何确定用于安装PHP5.3的正确版本号? 最佳答案 我不知道它是否在某些apt命令中可用,但您可以在此处获得完整列表:http://snapshot.debian.org/package/php5/Debian的最新PHP5.3似乎是

php - 在 SQL Server 中将 Varchar 值转换为整数/小数值

如何将数据类型为varchar的表中的记录值转换为integer或decimal这样我就可以得到值(value)。我使用SQLServer2005。假设我有这样的表结构:IDintStuffvarchar和记录ID=1,Stuff=32.43ID=2,Stuff=43.33ID=3,Stuff=23.22现在我想得到Stuff列的总数:SELECTSUM(convert(decimal(4,2),Stuff))asresultFROMtable但它不起作用。请需要帮助! 最佳答案 表结构...非常基本:createtabletabl

php - 匹配 "{number}"的正则表达式

我需要用“test(Z)”替换“{Z}”,其中Z始终是使用PHP和正则表达式的无符号整数(除非有更快的方法?)。$code='{45}=={2}->val()-{5}->val()';//applyregexto$codeecho$code;//writes:test(45)==test(2)->val()-test(5)->val()棘手的部分是它需要在速度和内存使用方面以尽可能最好的方式完成。 最佳答案 缺少的行是这样的:$code=preg_replace('/{([0-9]+)}/','test($1)',$code);工作

php - sql server 存储过程使用 varchar max 作为参数

我有一个使用php+mssql的相对简单的网站。我有各种存储过程可以执行简单的插入和删除工作。我面临的问题是,我传递给存储过程的许多参数的长度与我要插入数据的列的长度相同。例如,我有一个注册用户的存储过程。存储过程有一个参数@USERNAME,类型为varchar(12)。USER表中的列USERNAME具有与该长度相同的类型。原则上这不是真正的问题。但我宁愿能够自由更改USERNAME列的长度,而不必同时更改存储过程参数的长度。我不能使用表值参数,因为mssqlphp驱动程序不支持它们。我能想到的唯一解决方案是只对存储过程参数使用varchar(max),但这被认为是不好的做法吗?

php - CakePHP SwiftMailer SMTP TLS OpenSSL 错误 SSL3_GET_RECORD :wrong version number

我正在尝试使用我在此处找到的CakePHPSwiftMailer组件发送电子邮件:http://bakery.cakephp.org/articles/sky_l3ppard/2009/11/07/updated-swiftmailer-4-xx-component-with-attachments-and-plugins我要发送到的服务器在端口25上使用带TLS的SMTP。这是我尝试发送邮件时遇到的错误:Notice(8):Tryingtogetpropertyofnon-object[APP/views/helpers/hdl_session.php,line14]Warning(