A. MMSQL中的image类型对应mysql中的什么类型
BLOB类型,用于存储二进制数据。 MySQL中,BLOB是个类型系列,包括:TinyBlob、Blob、MediumBlob、LongBlob,最大存储分别为:
TinyBlob 最大 255
Blob 最大 65K
MediumBlob 最大 16M
LongBlob 最大 4G;
简单的说,mmsql的image可以存储图片;mysql的blob可以存储图片、文档等,功能更加强大。
B. mysql 中varchar tinyint text date smallint 这些怎么称呼都怎么用啊谢谢各位高手了!
char 和 varchar (Transact-SQL)
固定长度或可变长度的字符数据类型。
char [ ( n ) ]
固定长度,非 Unicode 字符数据,长度为 n 个字节。n 的取值范围为 1 至 8,000,存储大小是 n 个字节。char 的 SQL 2003 同义词为 character。
varchar [ ( n | max ) ]
可变长度,非 Unicode 字符数据。n 的取值范围为 1 至 8,000。max 指示最大存储大小是 2^31-1 个字节。存储大小是输入数据的实际长度加 2 个字节。所输入数据的长度可以为 0 个字符。SQL-2003 中的 varchar 就是 char varying 或 character varying。
备注
如果未在数据定义或变量声明语句中指定 n,则默认长度为 1。如果在使用 CAST 和 CONVERT 函数时未指定 n,则默认长度为 30。
将为使用 char 或 varchar 的对象指派数据库的默认排序规则,除非使用 COLLATE 子句指派了特定的排序规则。该排序规则控制用于存储字符数据的代码页。
如果站点支持多语言,请考虑使用 Unicode nchar 或 nvarchar 数据类型,以最大限度地消除字符转换问题。如果使用 char 或 varchar,建议执行以下操作:
如果列数据项的大小一致,则使用 char。
如果列数据项的大小差异相当大,则使用 varchar。
如果列数据项大小相差很大,而且大小可能超过 8,000 字节,请使用 varchar(max)。
当执行 CREATE TABLE 或 ALTER TABLE 时,如果 SET ANSI_PADDING 为 OFF,则定义为 NULL 的 char 列将作为 varchar 处理。
当排序规则代码页使用双字节字符时,存储大小仍然为 n 个字节。根据字符串的不同,n 个字节的存储大小可能小于 n 个字符。
-----------------------------------------------------------
int、bigint、smallint 和 tinyint (Transact-SQL)
使用整数数据的精确数字数据类型。
数据类型 范围 存储
bigint
-2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,372,036,854,775,807)
8 字节
int
-2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647)
4 字节
smallint
-2^15 (-32,768) 到 2^15-1 (32,767)
2 字节
tinyint
0 到 255
1 字节
备注
int 数据类型是 SQL Server 2005 中的主要整数数据类型。bigint 数据类型用于整数值可能超过 int 数据类型支持范围的情况。
在数据类型优先次序表中,bigint 介于 smallmoney 和 int 之间。
只有当参数表达式为 bigint 数据类型时,函数才返回 bigint。SQL Server 不会自动将其他整数数据类型(tinyint、smallint 和 int)提升为 bigint。
注意:
使用 +、-、*、/ 或 % 等算术运算符将 int、smallint、tinyint 或 bigint 常量值隐式或显式转换为 float、real、decimal 或 numeric 数据类型时,SQL Server 计算数据类型和表达式结果的精度时应用的规则有所不同,这取决于查询是否是自动参数化的。
因此,查询中的类似表达式有时可能会生成不同的结果。如果查询不是自动参数化的,则将常量值转换为指定的数据类型之前,首先将其转换为 numeric,该数据类型的精度很大足以保存常量的值。例如,常量值 1 转换为 numeric (1, 0),常量值 250 转换为 numeric (3, 0)。
如果查询是自动参数化的,则将常量值转换为最终数据类型之前,始终先将其转换为 numeric (10, 0)。如果涉及 / 运算符,则对于类似查询而言,不仅结果类型的精度可能不同,而且结果值也可能不同。例如,包含表达式 SELECT CAST (1.0 / 7 AS float) 的自动参数化查询的结果值将不同于非自动参数化的同一查询的结果值,因为自动参数化查询的结果将被截断以适合 numeric (10, 0) 数据类型。有关参数化查询的详细信息,请参阅简单参数化。
-----------------------------------------------------------
ntext、text 和 image (Transact-SQL)
重要事项:
在 Microsoft SQL Server 的未来版本中将删除 ntext、text 和 image 数据类型。请避免在新开发工作中使用这些数据类型,并考虑修改当前使用这些数据类型的应用程序。请改用 nvarchar(max)、varchar(max) 和 varbinary(max)。有关详细信息,请参阅 使用大值数据类型。
用于存储大型非 Unicode 字符、Unicode 字符及二进制数据的固定长度数据类型和可变长度数据类型。Unicode 数据使用 UNICODE UCS-2 字符集。
ntext
长度可变的 Unicode 数据,最大长度为 2^30 - 1 (1,073,741,823) 个字符。存储大小是所输入字符个数的两倍(以字节为单位)。ntext 的 SQL 2003 同义词为 national text。
text
服务器代码页中长度可变的非 Unicode 数据,最大长度为 2^31-1 (2,147,483,647) 个字符。当服务器代码页使用双字节字符时,存储仍是 2,147,483,647 字节。根据字符串,存储大小可能小于 2,147,483,647 字节。
image
长度可变的二进制数据,从 0 到 2^31-1 (2,147,483,647) 个字节。
-----------------------------------------------------------
日期和时间 (Transact-SQL)
用于表示某天的日期和时间的数据类型。
datetime 和 smalldatetime
表示某天的日期和时间。
数据类型 范围 精确度
datetime
1753 年 1 月 1 日到 9999 年 12 月 31 日
3.33 毫秒
smalldatetime
1900 年 1 月 1 日到 2079 年 6 月 6 日
1 分钟
备注
Microsoft SQL Server 2005 Database Engine 用两个 4 字节的整数内部存储 datetime 数据类型的值。 第一个 4 字节存储“基础日期”(即 1900 年 1 月 1 日)之前或之后的天数。基础日期是系统参照日期。另外一个 4 字节存储天的时间(以午夜后经过的毫秒数表示)。
smalldatetime 数据类型存储天的日期和时间,但精确度低于 datetime。数据库引擎 将 smalldatetime 值存储为两个 2 字节的整数。第一个 2 字节存储 1900 年 1 月 1 日后的天数。另外一个 2 字节存储午夜后经过的分钟数。
-----------------------------------------------------------
这些东西MSDN里都有,自己看看就知道了。不过还是非常喜欢这种不用动脑筋的问题,嘿嘿……
C. kernel (hd0,4)/beini/boot/bzImage quiet tinycore tce=sda5/beini/tce/ error22:no such partition
现在那一年,看帖子是那一年写的?
帖子里面写的是debian sarge
现在debian稳定版是 debian etch,
testing版本是 debian lenny
安装过程稍有不同,
另外上面的 kernel (hd0,4)
ramdisk_size=128000 不是固定的,随个人电脑配置而定的,
去这里
下载debian稳定版 刻盘安装吧,
一张盘1-2块的事,即使没有刻录机,花点钱找人刻录就行了,你花在硬盘安装上的时间不值这些钱?
etch/ lenny安装过程
他们差不多
D. 在velocity页面,为什么不推荐不推荐使用宏定义
使用Velocity,当然就免不了要使用宏,或者说使用Velocity而不使用其宏,就相当于废了Velocity一半以上的武功,非常可惜的。
怎么使用Velocity的宏呢,才最大程度的发挥其作用但是又避免掉入其中的坑呢?且听悠然乱弹乱弹:
官方文档中,关于Macro是这么说的:
#macro - Allows users to define a Velocimacro (VM), a repeated segment of a VTL template, as required
Format:
# [ { ] macro [ } ] ( vmname $arg1 [ $arg2 $arg3 ... $argn ] ) [ VM VTL code... ] # [ { ] #end [ } ]
•vmname - Name used to call the VM (#vmname)
•$arg1 $arg2 [ ... ] - Arguments to the VM. There can be any number of arguments, but the number used at invocation must match the number specified in the definition.
•[ VM VTL code... ] - Any valid VTL code, anything you can put into a template, can be put into a VM.
Once defined, the VM is used like any other VTL directive in a template.
#vmname( $arg1 $arg2 )
当然,上面清晰的说明了怎么写Macro,
也就是说可以写成:
#{macro}(macroName $varName1 $varName2)
##这里是模板内容
#end也可以写成
#macro(macroName $varName1 $varName2)
##这里是模板内容
#end当然参数个数可以是0..n个。
OK,确实很简单,但是上面的说法实际上只解决了如何写出满足正确语法的宏,但是实际应用当中,如果不加以约束,可能就出现非常难以查找的问题。
比如下面定义了一个超链接的宏,由于id不是每次都用得到,因此id是可选参数,可以填,也可以不填:
#macro(link $href $id)
<a href="$!href"#if($id) id="$id"#end>$bodyContent</a>
#end然后,就可以如下使用了:
#@link("www.tinygroup.com")TinyGroup#end上面的写法有问题么??似乎没有什么问题,即使什么参数也不传,只写下面的调用方法:
#@link()#end渲染的结果也会是:
<a href=""></a>OK,如此说来,真的没有啥问题。
接下来,我们又要写一个图片链接的宏,同样的由于id不是每次都需要,我们把它写成可选的:
#macro(image $href $id)
<img src="$href"#if($id) id="$id"#end>
#end在调用的时候,我们可以如下写:
#image("www.tinygroup.org/img/logo.gif")也可以这样写
#image("www.tinygroup.org/img/logo.gif" "logoImage")OK,一切都没有什么问题
但是我们想给首页上的Logo图片加个链接到首面上。
这个时候,我们会如下写:
#@link("www.tinygroup.org")
#image("www.tinygroup.org/img/logo.gif")
#end渲染的结果也如我们所期望的
<a href="www.tinygroup.org"><img src="www.tinygroup.org/img/logo.gif"></a>确实也如我们期望,正确的渲染了。
这个时候,我们忽然期望首页链接添加个id,期望利用JQuery对其进行一些动态处理,我们就把代码写成下面的样子:
#@link("www.tinygroup.org" "homepageLink")
#image("www.tinygroup.org/img/logo.gif")
#end这个时候,我们去执行的时候,忽然发现,程序不能正确运行了,去查看一下渲染的最终结果,居然是:
<a href="www.tinygroup.org" id="homepageLink"><img src="www.tinygroup.org/img/logo.gif" id="homepageLink"></a>这说明一个道理就是:
•外层的宏中的变量,在内层的宏中是可以访问的
•内层中的变量,如果与外层中宏的变量名冲突,如果有传入,则按传入的值,如果没有传入,则取上层中的值
正是基于上述原因,在Tiny UI框架中,所有宏定义,宏变量都必须前宏前缀,也就是说上面的两个宏定义要按下面的方式来进行定义:
#macro(link $linkHref $linkId)
<a href="$!linkHref"#if($linkId) id="$linkId"#end>$bodyContent</a>
#end#macro(image $imageHref $imageId)
<img src="$imageHref"#if($imageId) id="$imageId"#end>
#end小结:
虽然原因及解决办法都非常简单,但是也是吃了亏之后才总结出来的,希望能对也使用Velocicty或其它模板语言的同学有帮助。
E. tiny4412开发板支持linux吗
android和 Linux 是两码事,Android系统是基于 Linux 内核的。我们编译的 Android源码是 Android 系统本身的源码,而内核是指通过原生 Linux 源码移植过来的内核源码,所以它们需要我们分别编译。并且 Android 系统的版本号和 Linux 源码的版本号是没有严格意义上的对应关系的,只要某个版本的 Linux 内核能支撑起某个版本的 Android 系统,那么它们就可以组合使用。内核就不多说了,它在 Android 中的作用跟在其它 Linux 发行版中的作用没什么区别,我们简单介绍一下 Android 文件系统的结构。Linux 系统的启动过程:bootloader(GRUB)---->zImage(Kernel)---->ramdisk(临时根,在内存中)---->rootfs(永久根,在磁盘上)Android 的启动过程:bootloader(厂商提供)---->zImage(Kernel)---->ramdisk(永久根,为了提速所以放在内存中)那么 Android 的 ramdisk 中存放了什么呢,通常分为四个分区:[fat32] 内置存储空间。fat32 不是名字,是分区格式。[system] 系统启动时挂载到system目录[data] 系统启动时挂载到data目录[cache] 相当于swap分区其中 system 分区和 data 分区是 Android 系统中非常重要的两个分区,我们简单介绍一下它们常用的作用。system:[app] xxx.apk | 系统自带的软件安装目录,普通用户无权卸载。像电话本、拨号器、短信等等系统应用都安装在这里。还有许多定制版手机被无良厂商预装了各种无法被卸载的垃圾程序都放在这里。这里的程序都是用 java 编写的。[framework] xxx.jar | 存放用 Java 编写的库[bin] xxx | 存放本地程序,一般都是由 C/C++/asm 编写[lib] xxx.so | 存放用 C/C++/asm 编写的库data:这个目录在内存中,是android系统的家目录。系统配置文件都在这个分区中,恢复出厂设置通常就是格式化该分区。好了,android 的文件系统就先简单介绍到这了,下面开始今天的正题吧,编译 Linux 内核源码。我手上用的是 Linux 3.5 的内核,并且已经被大神们移植过了,所以我就不再执行 make menuconfig 了,而是直接用大神给做好的配置文件进行编译了。自己还没有研究过怎么移植内核,上次折腾到半夜还失败了,所以这次先老老实实的拿大神移植好的内核做实验,等过段时间研究好了内核移植再拿出来分享。既然有了大神移植好的内核,那么编译起来也就简单多了,过程当中也没有遇到什么坑。[yuhuashi@local android]$ tar xzf linux-3.5-20140422.tgz[yuhuashi@local android]$ cd linux-3.5/[yuhuashi@local linux-3.5]$ cp tiny4412_linux_defconfig .config[yuhuashi@local linux-3.5]$ make -j4......此处省略一万字OBJCOPY arch/arm/boot/zImageKernel: arch/arm/boot/zImage is readyOK,看到上面这两句话我们就知道编译成功了,并且编译好的内核放在了 arch/arm/boot/zImage 这里。可以开始烧写系统到开发板了,鸡冻ing...====================华丽的分割线====================接下来我们将编译好的数据拷贝到SD卡上,然后就可以通过SD卡烧写系统了。首先将友善之臂(Tiny4412 开发板的制造商)提供的 Superboot(就是个 bootloader) 烧写到 SD 卡上,使我们的 SD 卡可以引导起来。1.插入 SD 卡2.查看 SD 卡对应的设备文件[yuhuashi@local tools]$ sudo fdisk -lDisk /dev/sdc: 7948 MB, 7948206080 bytes19 heads, 10 sectors/track, 81704 cylinders, total 15523840 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x00000000Device Boot Start End Blocks Id System/dev/sdc1 155217 15523839 7684311+ b W95 FAT32可见我的 SD 卡是 /dev/sdc,各位在后面看到我的命令中包含 /dev/sdc 或 /dev/sdc1 时,需要替换成你机器上查询出来对应的设备文件路径,千万不要写错了!====前方高能预警,请无关人员立即撤离,相关人员必须在意识清醒的情况下谨慎操作!!!====3.将 Superboot 烧写到 SD 卡上其实可以自己用 read(2)、write(2) 函数等方式烧写,我已经有一个现成的工具了,所以直接就拿来用了。各位如果没有烧写工具可以自己写一个,因为我没有该工具的源码所以就不贴源码了,注意别把分区表覆盖了就行。另外 bootloader 是烧写在设备上的(即/dev/sdc),而不是烧写在分区上的(/dev/sdc1)。[yuhuashi@local tools]$ ./write4412boot Usage:<./write4412boot> <boot.bin> <dev>[yuhuashi@local tools]$ sudo ./write4412boot ../images_all/Superboot4412.bin /dev/sdc start ...........end ...........4.将 ramdisk-u.img、system.img、userdata.img 以及 linux 内核 linux-x.x/arch/arm/boot/zImage 以及 Superboot4412.bin 拷贝到SD卡images目录下。[yuhuashi@local android-4.2.2_r1]$ mkdir -p /media/yuhuashi/2CAA-71B6/images/Android4.2.2/[yuhuashi@local android-4.2.2_r1]$ cp ramdisk-u.img system.img userdata-4g.img /media/yuhuashi/2CAA-71B6/images/Android4.2.2/[yuhuashi@local android-4.2.2_r1]$ cp userdata-16g.img userdata-8g.img userdata.img /media/yuhuashi/2CAA-71B6/images/Android4.2.2/[yuhuashi@local android-4.2.2_r1]$ cd ..[yuhuashi@local android]$ cd linux-3.5/[yuhuashi@local linux-3.5]$ cp arch/arm/boot/zImage /media/yuhuashi/2CAA-71B6/images/Android4.2.2/[yuhuashi@local android-4.2.2_r1]$ cp ~/arm/class_boot/source/images_all/Superboot4412.bin /media/yuhuashi/2CAA-71B6/images/我们前面已经将 Superboot 烧写到 SD 卡上了,之所以还要再拷贝 一份到 SD 卡上,是因为之前烧写 Superboot 是为了让 SD 卡可以启动,而现在拷贝到 SD 卡上的这份 Superboot 是为了一会儿烧写进 eMMC 中在开发板上引导我们的 Android 系统。注意我拷贝的一个镜像叫做 userdata-4g.img,昨天说过在 Android 编译完成后,我们执行 ./gen-img.sh 命令生成了几个 img 文件,其中包含 userdata-16g.img、userdata-4g.img、userdata-8g.img、userdata.img,这几个镜像适用于不同大小的 eMMC 的设备。一般来说使用 userdata.img 就可以了,但是 友善之臂 的开发板有些特殊,4GB eMMC 的板子必须使用 userdata-4g.img 才行。5.在 SD 卡的 images 文件夹中创建 FriendlyARM.ini 文件[yuhuashi@local images]$ vim FriendlyARM.ini#This line cannot be removed. by FriendlyARM(www.arm9.net)CheckOneButton=NoAction = InstallOS = AndroidLowFormat = NoVerifyNandWrite = NoLCD-Mode = NoCheckCRC32=NoStatusType = Beeper | LED################### Android 4.2.2 ####################Android-BootLoader = Superboot4412.binAndroid-Kernel = Android4.2.2/zImageAndroid-CommandLine = console=ttySAC0,115200n8 androidboot.console=ttySAC0 ctp=2 skipcali=y vmalloc=512m ethmac=1C:6F:65:34:51:7E lcd=S70 uhost=nAndroid-RamDisk =Android4.2.2/ramdisk-u.imgAndroid-RootFs-InstallImage = Android4.2.2/system.imgAndroid-UserData-4G = Android4.2.2/userdata-4g.imgAndroid-UserData-8G = Android4.2.2/userdata-8g.imgAndroid-UserData-16G = Android4.2.2/userdata-16g.imgAndroid-UserData = Android4.2.2/userdata.img注意第一行的注释不要删掉,不然 Superboot 可能无法引导。 完成后卸载掉 SD 卡,然后将卡插入到开发板的插槽中,将启动模式开关拨动到 SD 卡启动。[yuhuashi@local images]$ cd ~[yuhuashi@local ~]$ umount /media/yuhuashi/2CAA-71B6
F. jquery.zoom.js怎么做相对位置
jQuery Cloud Zoom:图片放大镜插件 我爱模板推荐
jQuery Cloud Zoom:图片放大镜插件。想要类似淘宝、京东产品展示图片放大效果么,Cloud Zoom是一款不错的选择。它相对于Magic Zoom,体积更小,只有6KB,而且免费,效果却并不比它差;而与jQZoom插件比较,它体积也小了不少,并且兼容性更强,就目前测试的浏览器看,完美兼容IE6+, Firefox, Chrome, Opera, Safari。它还有着色,软聚焦和内变焦功能。总之很强大,谁用谁知道。
使用方法:
1、在head引入my.css文件
<link rel="stylesheet" type="text/css" href="cloud-zoom.css" />
<script type="text/javascript" src="/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="cloud-zoom.1.0.2.min.js"></script>
2、在body引入下面的代码:
<a class="cloud-zoom" id="zoom1" href="images/bigimage00.jpg" rel="adjustX: 10, adjustY:-4, softFocus:true"><img src="images/smallimage.jpg" title="Optional title display" alt="" /></a>
<a href='images/bigimage00.jpg' class='cloud-zoom-gallery' title='Thumbnail 1'
rel="useZoom: 'zoom1', smallImage: 'images/smallimage.jpg' ">
<img src="images/tinyimage.jpg" alt = "Thumbnail 1"/></a>
<a href='images/bigimage01.jpg' class='cloud-zoom-gallery' title='Thumbnail 2'
rel="useZoom: 'zoom1', smallImage: 'images/smallimage-1.jpg'">
<img src="images/tinyimage-1.jpg" alt = "Thumbnail 2"/></a>
<a href='images/bigimage02.jpg' class='cloud-zoom-gallery' title='Thumbnail 3'
rel="useZoom: 'zoom1', smallImage: 'images/smallimage-2.jpg' ">
<img src="images/tinyimage-2.jpg" alt = "Thumbnail 3"/></a>
3、参数说明:
参数 描述 (from V1.0.0) 默认值
zoomWidth 设置缩放窗口的宽度,如果设置为"auto"则窗口宽度与小图片宽度相等。 'auto'
zoomHeight 设置缩放窗口的高度,如果设置为"auto"则窗口高度与小图片高度相等。 'auto'
position 指定缩放窗口相对于小图片的位置。允许的值是 'left', 'right', 'top', 'bottom', 'inside' ,也可以是专门一个HTML元素的ID放置例如窗口的缩放位置:'element1' 'right'
adjustX 允许你微调像素的缩放窗口的X位置。 0
adjustY 允许你微调像素的缩放窗口的Y位置。 0
tint 指定覆盖的小图片的颜色。颜色应指定十六进制格式,例如'#aa00aa'。 false
tintOpacity 指定色彩的透明度,其中0是完全透明的,1是完全不透明。 0.5
lensOpacity 设置镜头鼠标指针的透明度,其中0是完全透明的,1是完全不透明。在色彩和软对焦模式,它将始终是透明的。 0.5
softFocus 适用于一种微妙的模糊效果来的小图片。设置为true或false。 false
smoothMove 形象的漂移缩放,数字越高,就越顺畅/更轻松进行漂移运动。 1 =不平滑。 3
showTitle 是否显示图片的标题. true
titleOpacity 指定是否显示标题不透明度,其中0是完全透明的,1是完全不透明。 0.5
G. 如何初始化cloud-zoom插件
1、在head引入my.css文件
<link rel="stylesheet" type="text/css" href="cloud-zoom.css" />
<script type="text/javascript" src="/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="cloud-zoom.1.0.2.min.js"></script>
2、在body引入下面的代码:
<a class="cloud-zoom" id="zoom1" href="images/bigimage00.jpg" rel="adjustX: 10, adjustY:-4, softFocus:true"><img src="images/smallimage.jpg" title="Optional title display" alt="" /></a>
<a href='images/bigimage00.jpg' class='cloud-zoom-gallery' title='Thumbnail 1'
rel="useZoom: 'zoom1', smallImage: 'images/smallimage.jpg' ">
<img src="images/tinyimage.jpg" alt = "Thumbnail 1"/></a>
<a href='images/bigimage01.jpg' class='cloud-zoom-gallery' title='Thumbnail 2'
rel="useZoom: 'zoom1', smallImage: 'images/smallimage-1.jpg'">
<img src="images/tinyimage-1.jpg" alt = "Thumbnail 2"/></a>
<a href='images/bigimage02.jpg' class='cloud-zoom-gallery' title='Thumbnail 3'
rel="useZoom: 'zoom1', smallImage: 'images/smallimage-2.jpg' ">
<img src="images/tinyimage-2.jpg" alt = "Thumbnail 3"/></a>
H. 使用TinyEditor编辑器 如何调用instance.post()函数
<input type="submit" value="Submit Comment" onclick="instance.post();" />