<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>An Ingres Blog &#187; Example</title>
	<atom:link href="http://blogs.planetingres.org/grant/category/example/feed" rel="self" type="application/rss+xml" />
	<link>http://blogs.planetingres.org/grant</link>
	<description>(Other blogs about Ingres are available...)</description>
	<lastBuildDate>Wed, 12 Jan 2011 11:59:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Install Ingres via openSUSE&#8217;s zypper</title>
		<link>http://blogs.planetingres.org/grant/78-install-ingres-via-opensuses-zypper</link>
		<comments>http://blogs.planetingres.org/grant/78-install-ingres-via-opensuses-zypper#comments</comments>
		<pubDate>Fri, 09 Nov 2007 10:06:12 +0000</pubDate>
		<dc:creator>Grant Croker</dc:creator>
				<category><![CDATA[Example]]></category>
		<category><![CDATA[ingres]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[linux]]></category>
		<guid isPermaLink="false">http://blogs.planetingres.org/grant/2007/11/09/install-ingres-via-opensuses-zypper/</guid>
		<description><![CDATA[Ever wanted to install Ingres direct from the package manager of favourite Linux distro? Well now you can, via the command line or the GUI. Bellow are the steps for getting Ingres installed into openSUSE using zypper: There are multiple ways to install software in openSUSE via the command line. Traditionally all software is installed [...]]]></description>
			<content:encoded><![CDATA[<p>Ever wanted to install Ingres direct from the package manager of favourite Linux distro? Well now you can, via the command line or the GUI. Bellow are the steps for getting Ingres installed into openSUSE using zypper:<br />
<span id="more-78"></span><br />
There are multiple ways to install software in openSUSE via the command line. Traditionally all software is installed via YaST (Yet another Setup Tool). In openSUSE 10.2 and 10.3 the underlying install mechanism for YaST is libzypp. In this run through I will show how to install Ingres using the command line interface to libzypp, zypper. The following assumes the root account is to be used:</p>
<ol>
<li>(Optional) Check the current state of your repositories:<br /><code><br />
# zypper sl<br />
#&nbsp;|&nbsp;Enabled&nbsp;|&nbsp;Refresh&nbsp;|&nbsp;Type&nbsp;&nbsp;&nbsp;|&nbsp;Alias&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
--+---------+---------+--------+-----------------------+----------------------<br />
1&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;yast2&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;debug&nbsp;&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;debug&nbsp;&nbsp;<br />
2&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;openSUSE-10.3-Updates&nbsp;|&nbsp;openSUSE-10.3-Updates<br />
3&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;yast2&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;Non-OSS&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;Non-OSS<br />
4&nbsp;|&nbsp;No&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;No&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;Packman&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Packman&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
5&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;yast2&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
6&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;VideoLan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;VideoLan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
7&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;SuSE_Tools&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;SuSE&nbsp;Tools&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</code></li>
<li>Add the Ingres repository:<br /><code># zypper sa http://downloads.ingres.com/Ingres2006/int.lnx Ingres<br />
* Adding repository 'Ingres'<br />
Repository 'Ingres' successfully added:<br />
Enabled: Yes<br />
Autorefresh: Yes<br />
URL: http://downloads.ingres.com/Ingres2006/int.lnx</code></li>
<li>Verify the new repository has been added:<br /><code><br />
# zypper sl<br />
#&nbsp;|&nbsp;Enabled&nbsp;|&nbsp;Refresh&nbsp;|&nbsp;Type&nbsp;&nbsp;&nbsp;|&nbsp;Alias&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
--+---------+---------+--------+-----------------------+----------------------<br />
1&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;yast2&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;debug&nbsp;&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;debug&nbsp;&nbsp;<br />
2&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;openSUSE-10.3-Updates&nbsp;|&nbsp;openSUSE-10.3-Updates<br />
3&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
4&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;yast2&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;Non-OSS&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;Non-OSS<br />
5&nbsp;|&nbsp;No&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;No&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;Packman&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Packman&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
6&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;yast2&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;OpenSuSE&nbsp;10.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
7&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;VideoLan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;VideoLan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
8&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;rpm-md&nbsp;|&nbsp;SuSE_Tools&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;SuSE&nbsp;Tools&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</code></li>
<li>Refresh/download the Ingres repository data:<br /><code><br />
# zypper ref Ingres<br />
Refreshing 'Ingres'<br />
repomd.xml is unsigned, continue? [yes/no]: yes<br />
* Building repository 'Ingres' cache<br />
Specified repositories have been refreshed.</code></li>
<li>Get a listing of the Ingres installables:<br /><code><br />
# zypper se ingres<br />
* Reading installed packages [100%]<br />
&nbsp;<br />
S&nbsp;|&nbsp;Repository&nbsp;|&nbsp;Type&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;Version&nbsp;&nbsp;&nbsp;|&nbsp;Arch<br />
--+------------+---------+-----------------+-----------+-----<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2006&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2006-abf&nbsp;&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2006-dbms&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2006-ice&nbsp;&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2006-net&nbsp;&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2006-odbc&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2006-rep&nbsp;&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
&nbsp;&nbsp;|&nbsp;Ingres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;package&nbsp;|&nbsp;ingres2007-star&nbsp;|&nbsp;9.2.0-114&nbsp;|&nbsp;i386<br />
</code></li>
<li>Installed the desired Ingres packages. For instance if you just require the DBMS server, Ingres/NET and ODBC:<br /><code><br />
# zypper install ingres2006-dbms ingres2006-net ingres2006-odbc<br />
* Reading repository 'OpenSuSE 10.3 debug' cache<br />
* Reading repository 'openSUSE-10.3-Updates' cache<br />
* Reading repository 'Ingres' cache<br />
* Reading repository 'OpenSuSE 10.3 Non-OSS' cache<br />
* Reading repository 'OpenSuSE 10.3' cache<br />
* Reading repository 'VideoLan' cache<br />
* Reading repository 'SuSE Tools' cache<br />
* Reading installed packages [100%]<br />
&nbsp;<br />
&nbsp;<br />
The following NEW packages are going to be installed:<br />
  ingres2006-dbms ingres2006 ingres2006-net ingres2006-odbc<br />
&nbsp;<br />
Overall download size: 24.1 M. After the operation, additional 92.4 M will be used.<br />
Continue? [yes/no]: yes<br />
Downloading package ingres2006-9.2.0-114.i386, 14.3 M (61.4 M unpacked)<br />
Downloading: ingres2006-9.2.0-114.i386.rpm<br />
* Downloading<br />
* Installing: ingres2006-9.2.0-114 [100%]<br />
Downloading package ingres2006-dbms-9.2.0-114.i386, 6.8 M (21.8 M unpacked)<br />
Downloading: ingres2006-dbms-9.2.0-114.i386.rpm<br />
* Downloading<br />
* Installing: ingres2006-dbms-9.2.0-114 [100%]<br />
Downloading package ingres2006-net-9.2.0-114.i386, 1.8 M (4.8 M unpacked)<br />
Downloading: ingres2006-net-9.2.0-114.i386.rpm<br />
* Downloading [100%]<br />
* Installing: ingres2006-net-9.2.0-114 [100%]<br />
Downloading package ingres2006-odbc-9.2.0-114.i386, 1.3 M (4.3 M unpacked)<br />
Downloading: ingres2006-odbc-9.2.0-114.i386.rpm<br />
* Downloading [100%]<br />
* Installing: ingres2006-odbc-9.2.0-114 [100%]<br />
</code><br />
The <em>ingres2006</em> package has also been selected for installation since it is a depenency for the other  pacakges being installed.</p>
</li>
<li>Verify Ingres is installed correctly:<code><br />
# /etc/init.d/ingresII start<br />
Starting Ingres, instance II<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;done<br />
# . ~ingres/.ingIIbash<br />
# sql iidbdb<br />
INGRES TERMINAL MONITOR Copyright 2007 Ingres Corporation<br />
Ingres 2006 Release 3 Linux Version II 9.2.0 (int.lnx/114)NPTL login<br />
Fri Nov  9 01:51:02 2007<br />
&nbsp;<br />
continue<br />
* select dbmsinfo('_version')\g<br />
Executing . . .<br />
&nbsp;<br />
&nbsp;<br />
┌────────────────────────────────────────────────────────────────┐<br />
│col1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;│<br />
├────────────────────────────────────────────────────────────────┤<br />
│II&nbsp;9.2.0&nbsp;(int.lnx/114)NPTL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;│<br />
└────────────────────────────────────────────────────────────────┘<br />
(1 row)<br />
continue<br />
* \q<br />
Ingres 2006 Release 3 Version II 9.2.0 (int.lnx/114)NPTL logout<br />
Fri Nov  9 01:51:31 2007<br />
</code></li>
<li>That&#8217;s it. Every time a new Ingres release is posted the repository it will be reommended for installation via upgrade. Determine if an update is available using <code>zypper lu -t package</code>.</li>
</ol>
<h2>Preventing upgrades</h2>
<p>If you wish to keep the installed Ingres version at the current level it is possible to prevent updates. The file, <code>/etc/zypp/locks</code> contains a list of packages that zypper is to ignore. To ignore any Ingres update:<br />
<code><br />
# echo ingres* &gt;&gt; /etc/zypp/locks<br />
</code></p>
<p>Add a comment below if you have any questions.</p>
<h3>Some random posts</h3>
<ul class="related_post"></ul>
<img src="http://blogs.planetingres.org/grant/?ak_action=api_record_view&id=78&type=feed" alt="" /><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblogs.planetingres.org%2Fgrant%2F78-install-ingres-via-opensuses-zypper&amp;title=Install%20Ingres%20via%20openSUSE%26%238217%3Bs%20zypper" id="wpa2a_2"><img src="http://blogs.planetingres.org/grant/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blogs.planetingres.org/grant/78-install-ingres-via-opensuses-zypper/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Example : Ingres LOBs and PHP</title>
		<link>http://blogs.planetingres.org/grant/22-ingres-lobs-and-php</link>
		<comments>http://blogs.planetingres.org/grant/22-ingres-lobs-and-php#comments</comments>
		<pubDate>Tue, 04 Jul 2006 15:04:13 +0000</pubDate>
		<dc:creator>Grant Croker</dc:creator>
				<category><![CDATA[Example]]></category>
		<category><![CDATA[ingres]]></category>
		<category><![CDATA[pecl]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">http://blogs.planetingres.org/grant/2006/07/04/ingres-lobs-and-php/</guid>
		<description><![CDATA[Since the lob code for Ingres PECL uses an undocumented feature, namely, parameter typing &#8211; I have included below a code snippet to get people started: SQL Schema: create table blobs ( blob_name varchar(255) not null, blob_data long byte not null ); PHP code &#60;?php $options = array ("blob_segment_length"=&#62;8192); $link = ingres_connect("php","","",$options); if (ingres_errno($link) != [...]]]></description>
			<content:encoded><![CDATA[<p>Since the lob code for Ingres PECL uses an undocumented feature, namely, parameter typing &#8211; I have included below a code snippet to get people started:</p>
<p>SQL Schema:</p>
<pre>
create table blobs (
         blob_name varchar(255) not null,
         blob_data long byte not null );
</pre>
<p>PHP code</p>
<pre>
&lt;?php
$options = array ("blob_segment_length"=&gt;8192);
$link = ingres_connect("php","","",$options);
if (ingres_errno($link) != 0 ) {
        echo "Connect: " . ingres_errno($link) . "  " . ingres_error($link);
}
// Get our binary file ...
$handle=fopen("logo.gif","rb");
$image = stream_get_contents($handle);
fclose($handle);
$sql = "insert into blobs values (?,?)";
// The following are type markers used with ingres_query() to
// denote the Ingres types being passed.
// 'B': /* long byte */
// 'b': /* byte */
// 'c': /* char */
// 'd': /* date */
// 't': /* text */
// 'D': /* decimal */
// 'f': /* float */
// 't': /* text */
// 'T': /* long text */
// 'V': /* long varchar */
// 'i': /* integer */
// 'n': /* nchar NFC/NFD UTF-16*/
// 'N': /* nvarchar NFC/NFD UTF-16*/
// 'v': /* varchar */
$sql_types = "vB"; /* varchar, Long Byte */
$params = array ("blob_name" =&gt; "ingres_logo.gif", "blob_data" =&gt; $image);
ingres_query ($sql,$link,$params,$sql_types);
if (ingres_errno($link) != 0 ) {
        echo "insert blob: " . ingres_errno($link) . "  " . ingres_error($link) ."\n";
}
$rc = ingres_query ("select blob_name,blob_data from blobs");
if (ingres_errno($link) != 0 ) {
        echo "select lobs: " . ingres_errno($link) . "  " . ingres_error($link);
}
while ( $blob_data = ingres_fetch_object() ) {
        $handle=fopen("/tmp/".trim($blob_data-&gt;blob_name),"w");
        fwrite($handle,$blob_data-&gt;blob_data);
	fclose($handle);
	/* compare the output with md5sum -b &lt;file&gt; to see if what you get out is the same as what was put in */
        echo $blob_data-&gt;blob_name. ":" . md5_file("/tmp/".trim($blob_data-&gt;blob_name))."&lt;br /&gt;\n";
}
ingres_commit($link);
ingres_close($link);
/*
vim: ts=4 sw=4 ff=unix
*/
?&gt;
</pre>
<p>[tags]ingres, php, pecl, lob[/tags]<br />
<h3>Some random posts</h3>
<ul class="related_post"></ul>
<img src="http://blogs.planetingres.org/grant/?ak_action=api_record_view&id=22&type=feed" alt="" /><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblogs.planetingres.org%2Fgrant%2F22-ingres-lobs-and-php&amp;title=Example%20%3A%20Ingres%20LOBs%20and%20PHP" id="wpa2a_4"><img src="http://blogs.planetingres.org/grant/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blogs.planetingres.org/grant/22-ingres-lobs-and-php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

